问题标签 [scope-identity]

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 投票
2 回答
88 浏览

sql-server - 如何解决级联插入上的空 Scope_Indentity?

我在 SQL Server 存储过程中执行级联插入。然后我将SCOPE_IDENTITY第一个表插入的 ID 传递给第二个表。

但是在执行存储过程期间,我得到了一个 NULL 值SCOPE_IDENTITY

消息 515,级别 16,状态 2,过程 InsertDDM_UserProfile,第 43 行
无法将值 NULL 插入列 'Filter',表 '.....dbo.DDM_Dashboard';列不允许空值。插入失败。

问题:为什么存储过程使用返回空 ID SCOPE_IDENTITY

这是我起草的存储过程。已经为这些表设置了 FK 约束:

下面是两个表的结构:

DDM_User-

DDM_仪表板:

0 投票
2 回答
2068 浏览

sql-server - 为什么 SCOPE_IDENTITY() 不返回我插入的 ID?

我有一个插入语句通过ADODB.Connection.Execute插入到具有标识列的 MSSQL 服务器上的表中执行,但返回的记录集不返回新插入记录的 ID。

我尝试了以下形式来获取记录的插入 ID。

在所有情况下,当查询返回的记录集时,它不包含标识

为什么会发生这种情况?

0 投票
2 回答
499 浏览

sql - SQL 从一个 TVP 插入到两个表中,使用来自第一个表的范围标识用于第二个表

我有带有多条记录的 SQL TVP 对象(例如 2 条记录)。我需要将这些记录插入到两个几乎相同的表中,唯一的区别是第二个表还有一个列,它是指向第一个表的外键。所以它应该循环TVP记录并一个一个地插入两个表中,但在第一个表中获取插入记录的scope_identity()并将其用于第二个表中的记录。

第一次迭代

  • 插入第一个表
  • 获取插入记录的 scope_identity()
  • 插入到第二个表中(使用第一个表中的范围标识来填充附加列)

依此类推,取决于 TVP 中有多少条记录。

我怎样才能做到这一点?

0 投票
0 回答
59 浏览

sql - Azure SCOPE_INDENTITY() DBPARM

将 SQL Server 与 Native Client 一起使用时,如果在 DBParm 中指定以下内容,则会得到有趣的结果:

我正在考虑跳入 Azure。Azure 会识别这些 DBParms 吗?

另外,我可以包括

在我使用 SQL Native Client 的连接字符串中?

谢谢

0 投票
0 回答
35 浏览

sql-server - MS SQL 2012,更新错误记录有另一个会话

我有一个使用 MS SQL Server 2012 的多用户 ASP.NET 系统。我有一个令人困惑的问题。我有一个像这样的表

ID 名称 MasterID 计数

现在。假设,有User1User2。User1 和 User2 在同时使用存储过程的屏幕上插入记录。过程返回插入的 ID,如

... 选择范围标识();

例如 User1 的插入记录是 379,User2 的插入记录是 380。两个用户都必须尽快通过 ID 更新自己记录中的 MasterID。但有时 User2 会更新 User1 记录。什么可能导致此错误。谢谢你的帮助

0 投票
1 回答
445 浏览

c# - SCOPE_IDENTITY() 返回千数

我有一个插入查询,如下所示。但是,scopeIdentity不返回 42,而是返回 1042。

这是 SQL Server 表:

在此处输入图像描述

我的代码:

0 投票
4 回答
854 浏览

c# - SQL Server Scope_identity 存储过程在 C# 中返回 null

我有一个名为的存储过程DvdInsert,如下所示:

它应该返回 ID 号,但在 Visual Studio 2017 中我有代码:

我有一个 Nunit 测试来验证功能,但在调试模式下我得到返回值 0 而不是 4

我的测试代码:

在我添加之前:

我在这里得到一个空引用异常:

我在 SQL Server 中的表如下所示:

我不明白为什么我没有从存储过程中获取返回值。有任何想法吗?我是初学者,所以如果愿意,请分解您的解释。

预先感谢您的帮助。

如果有帮助,我有我在邮递员中收到的错误的屏幕截图,请单击此处

我的邮政编码:

我在调试时遇到一条错误消息,上面写着“System.Data.SqlClient.SqlException:'子查询返回的值超过 1 个。当子查询遵循 =、!=、<、<=、>、>= 时,这是不允许的或当子查询用作表达式时。语句已终止。'"

这是我的 VS 在调试模式下的图像:

这只是在黑暗中拍摄,但我的问题可能与我插入新导演的子查询有关吗?

0 投票
1 回答
774 浏览

sql - SQL 插入 ID from IDENTITY ID 正在插入的行的 ID

我想知道,是否有一种直接的方法可以将 ID(在 ID 列中使用 IDENTITY(1,1) 生成)插入另一列。换句话说,我正在寻找 SCOPE_IDENTITY() 我可以在 insert 时获得,而不是INSERT提交之后。

我有一个表,其中有一列具有辅助 ID (SID),它引用同一个表中的行,在某些特殊情况下它引用自身。我知道这样做的唯一方法是在这些情况下执行 INSERT 并因此 UPDATE SID。简化示例:

存在一些故障,即由于该行可能会或可能不会引用自身等事实。

0 投票
0 回答
437 浏览

ssis - 需要在 SSIS 中使用 scope_identity 向表中插入数据并获取主键

我是 SSIS 的新手。需要以下要求的帮助。

1) 有一个名为 REPORTDETAILS 的表,它将存储报告详细信息,例如 REPORT_NBR、REPORT_DT、CreatedBy、REPORT_NM、REPORT_LOCATION,其中 Report_NBR 是主键和标识列。

2)我可以将输入数据存储在单独的变量中,并使用执行 SQL 任务成功地将数据添加到表中

3)但需要将主键捕获为输出变量(需要使用scope_identity)并将其传递给我无法执行的下一步。

你能帮我解决这个问题吗?提前致谢

0 投票
1 回答
143 浏览

sql-server - 具有返回 id 的 Sql 服务器范围标识保存和更新

保存表格时,我正在将照片保存到另一个表格。一切都很好。但是更新时更新不起作用,所以错误是“无法从dbnull转换为其他类型”

图片