问题标签 [smss]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
44 浏览

sql-server - 为什么第一次创建数据库时已经有一些用户?(SQL Server 2017,SSMS 17.9)

使用 Microsoft SQL Server Management Studio,无论是执行 SQL 命令(例如CREATE DATABASE XYZ)还是通过 GUI 创建一个全新的数据库,数据库都会以一些默认用户(见下图)结束,例如dbo,当前域用户guest、、sys

这是 SQL Server 的默认行为吗?有没有办法控制这种行为?(例如,不包括当前域用户、正在使用带有 SSMS 的计算机;或者必须包括一些用户)

另一个奇怪的是在用户列表中,可以看到tester222我很久以前为测试而创建的用户列表,而对象资源管理器的“SQL Server Instance\Security\Logins”中不再存在这个名称。刚刚怎么会出现在名单上?

样本数据库

0 投票
0 回答
81 浏览

sql - 插入并选择具有高字符数的行

我将数据插入到 nvarchar(max) 或 ntext 列中,字符串长度约为 130,000 个字符。当我插入数据然后将行复制出网格时,它只代表插入的前 43,700 个字符。所以我需要一种将所有 130,000 个字符都存储在行中的方法,因为这两种数据类型都应该能够存储该大小的字符串。

仅使用我的插入创建的 43,700 个字符行,我尝试选择带有“results to file”的行,因为我将对这些行执行的操作是将它们输出到报告文件(每个 130 个报告文件,00 个字符行)。不幸的是,报告文件中只显示了该行的前 8192 个字符,我进入了选项并将输出设置为最大,即 8192 个字符。所以我需要的是一种方法,当 130,000 个字符存储在行中时,它们都可以输出到文件中。

我知道有一些编码 SQL 的方法,因此它将插入分成三行,然后将选择分成但是输出所有数据所需的许多部分。通过这样做,我们是说对于能够容纳一百万个或更多字符的数据类型,SSMS 只能插入 43,700 个字符并仅输出 8192 个字符。或者,有没有办法设置服务器/数据库/表以使其能够使用这些数据类型的给定容量?

提前感谢任何解决方案。

0 投票
0 回答
28 浏览

sqlcmd - 从 SSMS 但不是从 CMD 运行的 Sql 命令

对不起,我是编程新手,我试图找到问题的答案,但没有找到。情况是这样的:我有一个我想使用的条形码扫描仪。此条码扫描器扫描内存中的条码并生成包含日期、时间和代码的 txt 文件。日期的格式为 dd/mm/yyyy。我想将此读数上传到 SQLExpress 数据库,但日期字段已格式化 - 正如我默认理解为 yyyy-mm-dd 我有一个 .bat 文件,它需要这样的 SQL 命令:bat 文件:

sqlcmd -S MYPC\SQLEXPRESS -U test -P test -i "d:\newfolder\update.sql" -o "d:\newfolder\log_%date:~6,4%%date:~3,2%%日期:~0,2%_%时间:~0,2%%时间:~3,2%.txt"

update.sql 文件:

插入到logistica.dbo.test ([data],[ora],[part]) SELECT convert(date,[data],110),[ora],[part] FROM openrowset(bulk 'd:\input\BARCODES .txt',FORMATFILE='D:\newfolder\format_file.xml') as t;

问题是上面的 sql 命令可以从 SSMS 运行,但不能从 cmd 运行。我收到以下错误:

消息 4864,级别 16,状态 1,服务器 MYPC\SQLEXPRESS,第 1 行第 1 列(数据)的第 1 行批量加载数据转换错误(指定代码页的类型不匹配或无效字符)

有没有人有更好的主意?

谢谢!

0 投票
1 回答
49 浏览

sql - 如何在 SQL 中创建一个新列,以显示每一行中另一个字段的总平均值?

我想弄清楚如何在 SSMS 中将列平均值作为新字段插入。让我以下表为例:

此表的平均价格为 $150 {AVG(Sales)}

我想知道的是,如何创建一个新视图,将此平均值作为新列插入?视图看起来像这样:

我做了一些重要的搜索,因为我认为这将是一个简单的操作。但是,我只能找到有关如何对平均值进行分组或如何显示平均值的信息。

0 投票
1 回答
33 浏览

sql - 如何删除这种类型的表名 [someprefix].table

我有一个组织的数据库,其中所有表都如下所示:EMPRE01.table1 EMPRE01.table2 等。 在此处输入图像描述

如果我输入这个查询:SELECT * FROM sysobjects WHERE xtype='U' 我会得到这个结果作为表名:table1,table2 但是如果我尝试这个查询:SELECT * FROM table1只有当我这样输入时它才会起作用:SELECT * FROM EMPRE01.table1

如何将数据库转换为“正常”模式?

0 投票
1 回答
64 浏览

sql-server - Why does SQL Server Mgmt Studio 17.9 save MDF to C:\Users? Error: Msg 5123, Level 16, State 1, Line 1 CREATE FILE access denied

I get the error

Msg 5123, Level 16, State 1, Line 1
CREATE FILE encountered operating system error 5(Access is denied.) while attempting to open or create the physical file

after launching a localDb server and trying to run a create database query off it. I am very new to SQL Server and need to do a tutorial for an internship I am starting.

I created a localdb instance in my onedrive directory. At least I think I did because that's the directory I navigated to when I ran the

command on my command prompt (I use Hyper):

enter image description here

So why is it that SQL Server Management Studio v17.9.1 is trying to create an .MDF file in my C:\users\ directory?

enter image description here

It wants to put it in C:\users. Why not put it into the directory I created in Onedrive?

A solution I saw which I did was to make my c:\users directory accessible to everyone under permissions. I didn't want to do it but I did and it worked. But why do I even need to do this when I am running the program from within my windows user admin account which is the only account on my computer? Also how do I get SQL Server Mgmt Studio to create my .MDF databases wherever I choose?

0 投票
1 回答
34 浏览

sql-server - SQL 以常规语法读取列

我不断收到此错误

消息 156,级别 15,状态 1,第 97 行
关键字“组”附近的语法不正确

我认为 SQL 将其作为语法读取,GROUP BY因为它以蓝色显示,我该如何解决这个问题?

询问:

0 投票
0 回答
266 浏览

sql-server - 使用存储过程和 VBA 在 SQL Server 中发送 Excel 表

我在 SQL Server 中创建了一个存储过程,用于测试目的,如下所示:

它工作正常...

然后,我在 SQL Server 中创建了一个与 my_DB 连接的 VBA 代码,并按如下方式填充列:

我的输出是 SQL Server 中的一行,声明 id=16 / Product_Name= Essaii / Price=155 / Quantity= 9。

好的,这很酷,我的尝试奏效了。My_DB现在我必须以同样的方式在 SQL Server中插入一个大 Excel 表(大约 50,000 行:)) 。

我应该循环每一行吗?如果是这样,我应该创建一个表对象来存储我的 Excel 表并循环遍历它吗?

我真的很感激这里的一些帮助!

非常感谢您提前帮我解决这个问题。

和平,

0 投票
0 回答
51 浏览

c# - 如何以编程方式查询多个已注册的 SQL Server 实例?

我不确定解决方案是什么,所以我把它放在那里是为了了解这是如何实现的,而无需单独对每个数据库运行查询。如果这是解决方案,那就这样吧,但我想看看是否有一种方法可以针对多个已注册的 SQL Server 实例运行单个查询。

我有大约 10 个已注册到本地服务器组的数据库,我可以在 SMSS 中使用相同的查询来查询它们。现在我正在尝试构建一种模式,在该模式中我可以以某种方式以编程方式查询所有这些数据库,然后获取结果并将它们转储到我们 AWS 环境中的 S3 存储桶中。实现这一目标的最佳方法是什么?

0 投票
1 回答
55 浏览

sql - 删除空值并修复对齐

我正在使用 SQL Server,并使用 SMSS 进行查询。我不是一个全职的 SQL 用户,我正在尝试为我们的工作人员制作一些仪表板,使用 SQL 作为数据收集器,并使用下面的查询。

该查询几乎可以正常工作,但我需要将所有结果放入成对的行中,而不是显示空值。这是我写的查询:

这给了我这样的结果:

但是,我试图得到这个:

谁能帮我?:/

编辑:数据如下所示:

如果我运行选择,数据如下所示: