更新/插入SQL Server数据库表

时间:2010-05-06 08:19:00

标签: c# sql-server

我有一个用C#编写的带有SQL Server数据库的程序。在数据库中有一个包含3列的表(ProcessData):ID(PK,自动ID),Start(日期时间),End(日期时间)。

还有很多线程会每隔几分钟/秒将新行插入数据库表(ProcessData)。

我想在开头只插入ID和开始列,并在几分钟/秒后,根据ID,添加结束列。

我该怎么做?

非常感谢,

3 个答案:

答案 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)