问题标签 [sql-server-2016-express]

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 回答
1265 浏览

powershell - 无法从 powershell 更新 SQL Server 表

我在 SQL Server 2016 Express 中创建了一个测试数据库,它包含 1 个标有drivers.

我使用 PowerShell 对已安装的驱动程序执行 ciminstance 查询,然后将这些值插入到测试数据库驱动程序表中。(插入按预期工作)我遇到的问题是尝试更新驱动程序表,只有最后一个对象被插入数据库 40 次(即从 ciminstance 查询返回了多少驱动程序)。我创建了 2 个 PowerShell 脚本

  1. 插入值
  2. 更新值

难倒!

0 投票
0 回答
759 浏览

sql - 与单次插入相比,并行插入分区表运行速度较慢

当我运行单个查询(SELECT GROUP BY 和 INSERT)时,大约需要 18 分钟(将 1.85 亿行减少到 1150 万行)才能完成执行。如果我将相同的查询作为并行插入(SELECT GROUP BY 和 INSERT)运行 10 次到一个分区表中,该表分布在 3 个不同文件系统中存在的 10 个文件组中(所有 3 个文件系统中的可用内存超过 1 TB。)然后查询运行时间很长,超过 2 小时才能完成。进行并行插入时,从 10 个不同的表中读取数据并插入到分区表中。( SELECT GROUP BY 查询对于所有 10 个切片都是相同的。)有人可以分享您的输入,为什么查询运行时间更长,即使表是分区?对于我上面提到的两种情况,系统配置都是相同的。如果有任何问题,请告诉我。

注意:- 对于上述两种情况,没有其他查询在后台运行。我在运行查询时设置了 MAXDOP=0。

0 投票
2 回答
38 浏览

c# - MsSql 服务器:运行存储过程

我有一张桌子

还有一个问题,当我尝试插入货币值时,它报告它需要一个整数值

我用存储过程插入值

货币应该是一个字符串值,如美元、加元、欧元等

当我执行存储过程时,这是我得到的错误

0 投票
1 回答
820 浏览

sql-server - 是否可以同时安装 SQL Server Express 版本和 SQL Server Developer 版本?

我查看了 Microsoft 文档但没有找到答案,我的机器上已经安装了 SQL Server 2016 Express 版本,想知道是否可以同时安装 SQL Server 2016 Developer 版本和 Express 版本?

0 投票
1 回答
44 浏览

sql-server - 使用访问代码更新 SQL Server 中的查询

执行此操作的相应 SQL Server 代码是什么?这是用 Access 编写的。

“accountCode”列是文本格式。目前,有些是 xx.x、xxx、x.xxx 等。我希望所有值都遵循xxx.xxx格式,在正确的位置有零。例如,45.3 将是 045.300,62.04 将是 062.040,等等

谢谢

0 投票
2 回答
328 浏览

sql - 设置在主存储过程中执行存储过程的顺序

我有一个主存储过程,其中有许多子存储过程,比如 10 个存储过程。

我想要的是如果我指定存储过程1,存储过程2,那么只有这2个存储过程应该执行,其他8个不应该执行。

如果我没有为排序指定任何值,那么它应该执行所有存储过程。

有人请告诉我该怎么做?有没有办法实现它?

我需要 1 个可以用逗号分隔的参数。也就是说,如果我们在参数中指定 1,2,那么它将执行存储过程 1 和 2。

这就是我的SP的样子..

0 投票
2 回答
1432 浏览

asp.net - ASP.NET Core:尝试为文件附加自动命名数据库失败

我知道这个问题已经被问过很多次了,但我仍然无法找到与我的场景类似的问题。

我正在开发一个 ASP.NET Core WebAPI 项目。这一切都运作良好,如果我完全搞砸了,我无法真正重现。

它应该使用从appsettings.Development.json文件中检索到的连接字符串进行调试:

调用时context.Database.CreateIfNotExists();,我收到以下错误:

System.Data.SqlClient.SqlException 发生(HResult 0x80131904):

尝试为文件 C:\Users\Shimmy\Documents\Visual Studio 2017\Projects\MyProj\MyProj.Api\AppData\MyProj.mdf 附加自动命名数据库失败。存在同名数据库,或无法打开指定文件,或位于 UNC 共享上。
来源:.Net SqlClient 数据提供程序
StackTrace:在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException 异常,布尔 breakConnection,Action`1 wrapCloseInAction)

我将 WebAPI 作为 Kestrel 控制台应用程序运行。

这是我尝试过的:

  • 在连接字符串中添加Integrated Security=TrueMultipleActiveResultSets=True
  • 添加了连接字符串的完整路径
  • 删除和重新创建MSSQLLocalDB实例
  • 重新安装 SQL LocalDB

用 替换AttachDbFilename标志Initial Catalog=MyProj,引发此错误:

System.Data.SqlClient.SqlException 发生
HResult:0x80131904
消息:无法打开登录请求的数据库“MyProj”。登录失败。用户 'SHIMMY-PC\Shimmy' 登录失败。
来源:.Net SqlClient 数据提供程序
StackTrace:在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException 异常,布尔 breakConnection,Action`1 wrapCloseInAction)

SHIMMY-PC\Shimmy确实出现在实例的用户中:

在此处输入图像描述

0 投票
1 回答
1273 浏览

database-performance - SQL Server:为什么不区分大小写的列上的 SELECT 比区分大小写的列更快?

我使用 SQL Server 2016 Express 和带有 JDBC 驱动程序版本 4.2 的 Java 应用程序。

我的数据库有一个排序规则Latin1_General_CI_AS(不区分大小写)。我的表有一列 type VARCHAR(128) NOT NULL。该列上有一个唯一索引。

我的测试场景如下:

在插入 150000 个 48 个字符长度的字符串后,我会随机选择 200 个现有字符串。我测量所有查询的总执行时间。

然后我删除索引,更改表以将列排序规则更改为Latin1_General_CS_AS(区分大小写)并再次创建唯一索引。

然后 200 次选择总共需要更多时间。

在这两种情况下(CI 和 CS),执行计划都是简单且相同的(使用索引搜索)。

查询执行时间不仅取决于区分大小写。如果字符串具有相同的前缀,则排序规则 CS 会增长得更快。这是我的结果(以秒为单位的执行时间):

随机字符串的相同前缀越长,区分大小写的查询花费的时间就越多。

  1. 为什么在不区分大小写的列上的搜索比在区分大小写的列上更快?
  2. 相同前缀行为的原因是什么?
0 投票
1 回答
2856 浏览

sql-server - 系统数据库文件 master.mdf 已存在于 C:\

我正在尝试向我已经安装的 Sql Server 实例添加一些新功能。

我运行安装设置并选择将新功能添加到现有 Sql Server 2016 RC3 实例的选项。检查我要添加的选项,然后继续下一步。在我添加身份验证模式和服务器管理员的步骤中,我遇到了如下图所示的错误。

图一

图二

问题很明显,但是在开始安装之前是否必须“删除”master.mdf文件和tempdb.mdf文件或做其他事情?

我不想更改主数据库文件的位置,因为我不想再次为相同目的的两个数据库创建两个目录。

0 投票
1 回答
2679 浏览

c# - SqlCommand.ExecuteNonQuery() 总是返回 0

我正在尝试通过我的 c# 代码处理 UPDATE 语句。我使用以下...

我试图在有和没有参数的情况下这样做,只是为了调试,并且0由于某种原因总是得到返回值。

我做了一个小的扩展方法来扩展参数以向我展示实际的查询(没有变量)......

...我在执行查询之前调用它以查看将运行的内容。

然后,我采用在 c# 中返回 0 个受影响行的 SAME EXACT 查询并手动运行它,Microsoft SQL Server Management Studio让它告诉我1行受到影响!

带有参数的查询是...

展开的查询是...

有什么想法可以解决这个问题吗?