如何在SQL Server中无所事事

时间:2011-08-05 09:41:23

标签: sql-server tsql

  

可能重复:
  Empty statement in T-SQL

如何在SQL Server中编译?

IF @value IS NULL
BEGIN
  -- I don't want to do anything here
END

6 个答案:

答案 0 :(得分:16)

你的意思是因为空的BEGIN-END失败了吗?如果由于某种原因你不能删除该块,那么做一些毫无意义但语法上有效的东西;

IF @value IS NULL
BEGIN
  set @value=@value -- or print 'TODO' etc
END

答案 1 :(得分:14)

基于this thread的想法:

IF @value IS NULL
BEGIN
  WAITFOR DELAY '00:00:00'
END

应该注意(一开始不知道),就像PRINT一样,这种方法并不普遍。特别是,它不能用于功能。当您需要在函数中的某处添加NO-OP时,请使用其他建议。

答案 2 :(得分:12)

我的第一个答案。

IF @value IS NULL BEGIN 
    goto a a:
END 

稍微思考后的第二个答案

IF @value IS NULL BEGIN 
    SET
END 

答案 3 :(得分:3)

我唯一能想到的是非常快且不影响磁盘的操作。最简单和最快的可能是变量声明和赋值......

DECLARE @t int

OR

SET @t=@t

答案 4 :(得分:3)

IF @value IS NULL
BEGIN
  -- I don't want to do anything here
  Print 'What a waste of time'
END

答案 5 :(得分:1)

我的想法是:你为什么要把它放在你的代码中?如果原因是你有一个else块,那么将条件翻转为“如果@value不为null”。但就其本身而言,这个区块没有做任何事情。