我需要使用c#执行这些t-sql语句,出于某些原因我不想将它们放在存储过程中。
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
GO
BEGIN TRANSACTION
UPDATE mytable
SET col=col
WAITFOR DELAY '00:02:00'
ROLLBACK TRANSACTION
答案 0 :(得分:3)
您不能将其作为一个批次执行,因为 它不是 一个批次。你不能把GO放在中间 - 它将SSMS等编辑器中的批次分开,但实际上并不是T-SQL本身。
但是,您的代码不需要GO - 所以只需将其删除即可。或者在同一个连接上将它作为两个单独的批次执行(这正是像SSMS这样的工具将对此做的)。