Sql 复合语句无法更改分隔符
我试图在DB Solo 4.2.2的查询编辑器中运行一个简单的复合语句 似乎我无法正确更改行尾分隔符。我正在使用DB2。下面是一个给出错误的简单示例:Sql 复合语句无法更改分隔符,sql,db2,Sql,Db2,我试图在DB Solo 4.2.2的查询编辑器中运行一个简单的复合语句 似乎我无法正确更改行尾分隔符。我正在使用DB2。下面是一个给出错误的简单示例: --#SET TERMINATOR @ BEGIN ATOMIC DECLARE id INT; SET id = 10; END @ --#SET TERMINATOR ; 错误是: 在“N原子声明id”之后发现意外标记“INT”。预期标记可能包括:“语句结束” 提前感谢DB2只允许在复合SQL中使用分号作为分隔符。您使用的语法似乎只
--#SET TERMINATOR @
BEGIN ATOMIC
DECLARE id INT;
SET id = 10;
END @
--#SET TERMINATOR ;
错误是:
在“N原子声明id”之后发现意外标记“INT”。预期标记可能包括:“语句结束”
提前感谢DB2只允许在复合SQL中使用分号作为分隔符。您使用的语法似乎只有在使用该实用程序(随DB2Linux/Unix/Windows提供)时才有效 以下是来自的一些相关信息(来自z/OS IC): 如何在一个SQL过程中编码多个语句 使用分号 字符来分隔SQL过程中的SQL语句 过程主体没有终止字符。因此,如果 过程只包含一条语句,不需要放置 该语句后面的分号。如果程序包括一组 嵌套语句,则不需要在 最外层的陈述
谢谢你提供的信息。是否有一种方法可以声明要使用的变量,而不创建存储过程,而只使用开始和结束标记?为了澄清这一点,DB2命令行处理器支持语法(
--#SET TERMINATOR
)。