问题标签 [identity-insert]

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 投票
3 回答
6568 浏览

sql-server - SET IDENTITY_INSERT OFF 的数据库范围等效项

在我从 SQL 脚本插入 140 万行数据的永恒 传奇中,我编写了一个基本的 WinForms 应用程序,它获取脚本的每一行并单独执行它。

但是,由于原始脚本包含

并且 SET 是一个会话范围的命令,这个设置在每次 SQL 调用时都会丢失,这意味着每一行都失败了。有没有办法在整个数据库范围内为整个表设置 IDENTITY_INSERT 以便我可以在不失败的情况下进行这些单独的调用?或者我可以通过在每一行附加一个命令来告诉它忽略身份规范?

0 投票
7 回答
16387 浏览

c# - Linq to SQL:为什么会出现 IDENTITY_INSERT 错误?

我正在使用 Linq to SQL。我有一个 DataContext,我正在针对它 .SubmitChanges()'ing。插入标识字段时出错:

p>

唯一的身份字段是“ID”,其值为 0。它在 DBML 中定义为:

有一些外键,我已经验证它们的值与外表的内容相匹配。

为什么我会收到此错误?

编辑:这是查询:

显然它传递了一个零,尽管从未被分配过一个值。

编辑:添加代码:

另外,我注意到当我更新现有装备(insertonsubmit)时,它不会更新。Profiler 甚至不显示正在运行的任何查询。

0 投票
2 回答
9614 浏览

c# - Sql Server Ce 3.5 身份插入

Sql Server CE 中的标识列存在问题

使用服务器资源管理器时,在VS2008中,执行以下脚本

SET IDENTITY_INSERT testTable ON; 插入 testTable (id,name) 值 (1,'Something') SET IDENTITY_INSERT testTable ON;

发送以下消息错误“不支持 Set SQL 构造或语句。” 但随后插入行很好?!?!?!

无论如何,当我尝试通过 C# 做同样的事情时,将该脚本作为命令文本给出它失败说错误出现在“插入关键字”中

我知道针对 SQL SERVER CE,该命令当时只接受一个批处理命令,所以在这种情况下,我们有三个命令(它可以与完整的 SQLServer 一起使用)有什么想法吗?

0 投票
2 回答
220 浏览

sql - SQL:没有使用触发器的身份功能解决方法

我对我的触发器有点生疏,什么不是,我正试图为一个班级找出这个问题:

在数据库 TEST 中,表没有 IDENTITY 功能选项。换句话说,当我们在“Users”表中插入一行时,我们希望主键“UserID”自动递增。请建议一种解决方法来实现此功能而无需此类内置功能。(提示:您仍然可以使用函数、存储过程、序列、触发器等)

0 投票
3 回答
6315 浏览

sql-server - 如何为 JDBC PreparedStatement 设置 IDENTITY_INSERT 选项?

我需要将数据复制到具有标识列的 MSSQLServer 2005 数据库表中。

我已经看到如何通过执行禁用标识列

在插入查询之前。

当我使用 PreparedStatements 进行批量插入并且在操作期间无法更改语句时,我该怎么做?

0 投票
5 回答
120 浏览

c# - 身份插入与元数据表一起使用好吗

我的数据库中有几个表只包含“元数据”。例如,我们有不同的 grouptypes、contentItemTypes、languages 等。

问题是,如果您使用自动编号,那么您可能会产生间隙。id 在我们的代码中使用,所以数字非常重要。

现在我想知道是否最好不要在这些表中使用自动编号?

现在我们首先在数据库中创建了行,然后才能编写代码。在我看来,情况不应该如此。

你们有什么感想?

0 投票
1 回答
1384 浏览

identity-insert - 如何在 TSQL 中关闭表的 IDENTITY 列

我使用了“SET IDENTITY_INSERT OFF”,这正在成功执行,但在表中仍然只有身份

请帮助任何人

0 投票
1 回答
1676 浏览

nhibernate - 使用 NHibernate / Fluent Nhibernate 强制插入身份

我们有一个使用 NHibernate 的相当健壮的系统,我们正在从单个数据库服务器迁移到拥有两台服务器,一台用于管理,另一台用于我们面向公众的网站。这主要是为了让我们可以使用不会影响当前站点的工作流来进行内容管理之类的事情。到今天为止,它们是同一服务器中的两个数据库,但随着时间的推移,我可以看到使用两台物理机和一个 Web 服务调用来推送数据。

例如,我们的一位营销人员决定通过管理员推出新的促销活动,并将其安排在 2 周后。我们正在开发一个调度系统,该系统将在新促销活动开始时将其推送到我们的生产服务器。目的是为数据推送使用相同的 NHibernate 提供程序,但我们需要保持引用完整性。

我们正在使用流利的 nhibernate,我可以看到编写两个不同的类映射,然后使用某种形式的依赖注入(IE 结构映射)来选择要加载的映射。我希望有一个更好的答案,因为随着系统的增长,这似乎无法维持。有什么建议么?

0 投票
3 回答
3635 浏览

c# - 我将 IDENTITY_INSERT 设置为 ON 但我得到一个 SqlException 说它是 OFF

我试图从一个文本文件中获取数千张发票(和其他东西)并将它们插入 SQL Server 2008。我编写了一个小控制台应用程序来执行此操作,它使用 LINQ to SQL。插入所有现有发票后,我希望将Invoice_ID其作为标识列并自动递增,因此我将其设计为:

在我开始插入发票之前,我调用了一个包含以下行的存储过程:

提交更改后,我使用以下行调用另一个存储过程:

当我尝试插入发票并提交更改时,出现以下异常:

SQLException:当 IDENTITY_INSERT 设置为 OFF 时,无法在表“发票”中插入标识列的显式值。

我运行了 SQL Profiler,我可以看到它在尝试执行插入之前确实设置IDENTITY_INSERT为。ON我没有看到它被设置到OFF任何地方。我对 SQL Profiler 很陌生,所以也许我可以启用一个事件,它会为我提供更多信息来尝试和调试它。有任何想法吗?

我尝试调整 LINQ to SQL 使用的 .dbml 文件中的值。我将InvoiceAuto Generated Value设置为“False”,Auto-Sync设置为“Never”,并Server Data Type设置为“Int NOT NULL”。通常我会将它们分别设置为“True”、“On Insert”和“Int NOT NULL IDENTITY”,但是当我这样做时,我可以看到 SQL Server 正在执行:

SELECT CONVERT(Int,SCOPE_IDENTITY()) 作为 [值]

而不是插入Invoice_ID我提供的。

0 投票
3 回答
10007 浏览

oracle - 哪个命令将替换 Oracle 中 SQLServer 的 IDENTITY INSERT ON/OFF?

我必须将此查询(此处简化)从 T-SQL 迁移到 ORACLE

id是 SQLServer 中的一个 Identity 字段。

我在 ORACLE 中有一个带有序列的表,我找不到显示如何禁用序列并将其设置为以 MAX(id) + 1 重新开始的片段。

任何 ORACLE 专家都可以帮助我吗?

谢谢,罗德里戈。