gpt4 book ai didi

sql - 使用 uniqueidentifier 作为主键并使用参数化查询从客户端应用程序插入它

转载 作者:行者123 更新时间:2023-12-02 00:43:39 26 4
gpt4 key购买 nike

我创建了一个数据库,其中使用 uniqueidentifier 作为主键。我正在尝试运行一个最终看起来像这样的参数化查询。 (insert into someTable (uniqueID) Values('76c14693-5475-4224-ba94-7d30c919ac59') (uniqueID is my PK).当我在 SQL Server Management Studio 中运行这个插入语句时,它执行没有问题,但是,当我尝试从我的代码运行它。

错误:当 IDENTITY_INSERT 设置为 OFF 时,无法为表“someTable”中的标识列插入显式值。

我查了一下,有很多关于打开 IDENTITY_INSERT 的建议,但它们都使用存储过程。我需要能够使用参数化查询来做到这一点。或者我需要一种方法来在数据库中获取新创建的 guid。这似乎是每个人在某个时候都需要的东西。有什么简单的解决办法吗?

附注。我需要该 ID,因为我需要使用该 ID 将记录添加到其他表中。

编辑:

这是有问题的表的结构

CREATE TABLE [dbo].[someTable]
(
[NewsID] [uniqueidentifier] NOT NULL CONSTRAINT [DF_someTable_NewsID] DEFAULT (newid()),
[ShortTitle] [nvarchar](255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[DateCreated] [datetime] NULL CONSTRAINT [DF_someTable_DateCreated] DEFAULT (getdate()),
CONSTRAINT [PK_cmc_News_1] PRIMARY KEY CLUSTERED (
[NewsID] ASC )WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF
) ON [PRIMARY]
) ON [PRIMARY]

最佳答案

实际上,您一定有其他问题,或表中的其他列,因为只有在表中有 IDENTITY 列时才会出现该错误,并且 IDENTITY 列不能是数据类型 uniqueidentifier - 您确定吗? '插入到同一个表中,或者您没有使用某种试图为标识列指定特定值的 ORM 工具?也许您可以编写表定义并附加它?

编辑:添加其他信息,因为问题现在包括架构。

看起来这个特定表中没有标识,所以我首先检查是否在有问题的表上定义了任何触发器,并查看是否在另一个使用标识的表中进行了尝试插入...

关于sql - 使用 uniqueidentifier 作为主键并使用参数化查询从客户端应用程序插入它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1717299/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com