我有一个用C#编写的带有SQL Server数据库的程序。在数据库中有一个包含3列的表(ProcessData
):ID
(PK,自动ID),Start
(日期时间),End
(日期时间)。
还有很多线程会每隔几分钟/秒将新行插入数据库表(ProcessData
)。
我想在开头只插入ID和开始列,并在几分钟/秒后,根据ID,添加结束列。
我该怎么做?
非常感谢,
答案 0 :(得分:1)
所以你想插入一个新行,捕获新创建的ID,然后再更新行??
像这样的东西
DECLARE @NewID INT
INSERT INTO dbo.tblProcessData(Start) VALUES (@Start)
SELECT @NewID = SCOPE_IDENTITY()
以及后来:
UPDATE dbo.tblProcessData
SET End = @End
WHERE ID = @NewID
这就是你要找的东西吗?
答案 1 :(得分:0)
除非我遗漏了某些东西,否则你可以在开头做一个插入语句
INSERT INTO tblProcessData (Start) VALUES (@Start)
然后是更新声明
UPDATE tblProcessData SET End=@End WHERE ID=@ID
有许多方法可以为猫皮肤设置,但这是T-SQL方式之一
答案 2 :(得分:0)
你的桌子 ProcessData 包含
ID(PK, auto-ID)
Start(DateTime)
End(DateTime)
查询
Insert Into ProcessData(Start) values (your value)
After some time
Update ProcessData Set End=(your value) where ID= (your ID)