Collection Contents 上一页 下一页 PDF

ASA SQL 参考

SQL 语句

EXIT 语句 [Interactive SQL]


说明 

此语句用于退出 Interactive SQL。

语法 

EXIT | QUIT | BYE } [ return-code ]

return-codenumber | connection-variable

用法 

此语句关闭与数据库的连接,然后关闭 Interactive SQL 环境。关闭数据库连接前,如果 COMMIT_ON_EXIT 选项设置为 ON,则 Interactive SQL 自动执行 COMMIT 语句。如果该选项设置为 OFF,则 Interactive SQL 会执行隐式 ROLLBACK。缺省情况下,COMMIT_ON_EXIT 选项设置为 ON。

在批处理文件中可以使用可选的返回代码来指示 Interactive SQL 命令文件中的命令是成功还是失败。缺省返回代码是 0。

权限 

无。

副作用 

如果选项 COMMIT_ON_EXIT 设置为 ON(缺省),则此语句自动执行提交;否则执行隐式回退。

在 Windows 操作系统中,提供的可选返回值是 ERRORLEVEL。

另请参见 
标准和兼容性 
示例 

如果表 T 有行,下面的示例将把 Interactive SQL 返回值设置为 1,如果 T 中没有行,则设置为 0。

CREATE VARIABLE rowCount INT;
CREATE VARIABLE retcode INT;
SELECT COUNT(*) INTO rowCount FROM T;
IF( rowCount > 0 ) THEN
    SET retcode = 1;
ELSE
    SET retcode = 0;
END IF;
EXIT retcode;
注意 
不能编写以下语句
CREATE VARIABLE rowCount INT; 
SELECT COUNT(*) INTO rowCount FROM T; 
IF( rowCount > 0 ) THEN     
    EXIT 1;        //  <-- not allowed 
ELSE 
    EXIT 0;    //  <-- not allowed 
END IF; 

因为 EXIT 是一条 Interactive SQL 语句(而不是 SQL 语句),而且您不能在其它 SQL 块语句中包含 Interactive SQL 语句。

下面的 Windows 批处理文件将在命令提示符下显示 Error = 1

dbisql -c "dsn=ASA 9.0 Sample" EXIT 1
if errorlevel 1 echo "Errorlevel is 1"

Collection Contents 上一页 下一页 PDF