试图在while循环中使用break

时间:2015-09-22 08:24:09

标签: sql-server

我正在尝试的是在打印语句时条件满足(如果不存在块)时退出循环;否则继续while循环。我收到语法错误:

  

关键字' ELSE'附近的语法不正确。

以下是代码段:

WHILE @currentrow < @rows
BEGIN
SET @currentrow = @currentrow + 1

SELECT @selectcol = sysid
FROM @TableVar
WHERE id = @currentrow

SELECT @sysid =  @selectcol 

IF NOT EXISTS (
SELECT field_id
FROM fields
WHERE sys_id = @sysid
    AND NAME = @field_name
)
 PRINT cast(@field_name AS VARCHAR) + ' not found in the       business area ' + cast(@sysid AS VARCHAR)

BREAK

ELSE

CONTINUE

[While loop continues]

1 个答案:

答案 0 :(得分:0)

最后需要names个关键字:

END

为了避免逻辑流程中出现这样的错误,请有效地使用空格来清楚地看到开始和结束语句的位置。