将DataTable更新到SQL Server数据库时,在调用GetErrors()后,出现错误消息“列”PK_Column'不允许为空“() 我不想为PK_Column提供一个值,因为它是数据库中的自动增量主键列。我的插入语句如下所示:DataAdapter Update()需要自动递增主键列的输入参数
INSERT INTO [Order] ([Customer_Id], [OrderTime], [OrderType])
VALUES(@Customer_Id, @OrderTime, @OrderType)
SELECT CAST(SCOPE_IDENTITY() AS int) AS '@PK_Column'
它在SQL Server Management Studio中按预期工作,所以查询显然不是问题。
我对插入命令有四个参数,一个输出参数(@PK_Column
)和三个输入参数(@Customer_Id, @OrderTime, @OrderType)
。我发现如果将@PK_Column
设置为InputOutput参数,则不会收到错误消息,但PK_Column
值不会使用数据库创建的正确值进行更新。
谢谢,这解决了我的问题。 – phatoni