自动生成的列不会在DataRow中刷新
本文关键字:DataRow 刷新 自动生成 | 更新日期: 2023-09-27 18:21:10
其中一列,称为ID
,我的SQL Server数据库是自动生成的。当我使用SqlDataAdapter.Update(table)
插入新行并接受更改SqlDataAdapter.AcceptChanges()
时,table
中的ID
列将设置为-1
,而不是新的自动生成的ID
值。数据库插入工作和新行插入到数据库中,并按顺序自动生成ID
值。
如何强制SqlDataAdapter
或SqlDataTable
返回正确的ID
值?
我已经解决了这个问题。供未来参考
operationDBAdapter.InsertCommand.CommandText = "INSERT INTO Operations(operationType,agentID,resetTime,description,enabled,logLevel) VALUES
(@operationType,@agentID,@resetTime,@description,@enabled,@logLevel);
**SELECT ID,operationType,agentID,resetTime,description,enabled,logLevel
FROM Operations WHERE (ID = SCOPE_IDENTITY())**"
插入命令之后,只需从同一个表中选择行即可。