第1个回答 2011-06-08
if 后面没then
引用sql联机丛书
IF...ELSE
在执行 Transact-SQL 语句时强加条件。如果条件满足(布尔表达式返回 TRUE 时),则在 IF 关键字及其条件之后执行 Transact-SQL 语句。可选的 ELSE 关键字引入备用的 Transact-SQL 语句,当不满足 IF 条件时(布尔表达式返回 FALSE),就执行这个语句。
语法
IF Boolean_expression
{ sql_statement | statement_block }
[ ELSE
{ sql_statement | statement_block } ]
另外你这个触发器能执行?
set @q = old.filmreview_id
while(old.filmreview_id!=MAX(filmreview_id))
这两行我怎么看都不符合sql语法啊
第2个回答 2011-06-08
SQL中的if...else语法没有then的。
应该是
if(filmreview_id > @q)
begin
filmreview_id = filmreview_id - 1
end
else
begin
break
end
end
第3个回答 2011-06-08
take out End below break本回答被提问者采纳