请问xxx.sql在查询分析器中条件判断终止执行的命令
有一个很多语句的 xxx.sql脚本
是否可以在这个脚本文件中加上某些条件判断,并且实施中途退出(不执行后续的sql脚本命令)
------解决方案--------------------应该可以,根据某个值判断是否退出
------解决方案--------------------加入判断条件后,return
------解决方案-------------------- select 1
return
select 2
--result
-----------
1
(所影响的行数为 1 行)
------解决方案--------------------学习
------解决方案--------------------if +goto
------解决方案--------------------.......
if (@error <> ' ') goto SqlEnd
.............
.........
SqlEnd:
return
------解决方案--------------------select 1
return --加了return,则只输出1一条.不加return,则输入1,2两条
select 2
------解决方案--------------------RETURN
从查询或过程中无条件退出。RETURN 即时且完全,可在任何时候用于从过程、批处理或语句块中退出。不执行位于 RETURN 之后的语句。
--建立测试表
drop table tbtest
go
create table tbtest(id int)
--测试的SQL语句块
insert into tbtest
select 11
return
alter table tbtest add name varchar(10)
--测试语句块结束
--查看表
select * from tbtest
/*
id
-----------
11
(所影响的行数为 1 行)
*/
--name字段并没有增加到表中
不知道楼主是怎样测试的.
------解决方案--------------------return 後面應該要加個返回值的吧
DECLARE @cver varchar(7)
SELECT @cver=cversion FROM sys_version
IF @cver IS NOT NULL
BEGIN
IF @cver > = '2.99 '
BEGIN
PRINT '服务器已经更新到2.99 '
RETURN 0
END
END
試試