在db2中创建过程时出错

时间:2015-02-27 13:26:47

标签: sql database stored-procedures db2

我在db2中创建过程时遇到错误。

错误是 - 预期的令牌可能包括:psm_semicolon .. SQLCODE = -104

帮助我......

CREATE PROCEDURE update_new()
LANGUAGE SQL
BEGIN
CREATE TABLE TEMP(METADATA_KEY varchar(40),NEW_METADATA_KEY varchar(40));
END;

1 个答案:

答案 0 :(得分:1)

在您正在使用的任何工具中,将语句终止符更改为分号以外的其他内容,并将该终止符放在CREATE PROCEDURE语句的末尾。

例如,如果使用命令行处理器,请将其保存到文件中(注意最后的" @"符号:

CREATE PROCEDURE update_new()
LANGUAGE SQL
BEGIN
 CREATE TABLE TEMP(METADATA_KEY varchar(40),NEW_METADATA_KEY varchar(40));
END@

然后执行文件:db2 -td@ -f myproc.sql

执行此操作的原因是分号始终在过程代码中用作中的终结符,因此您必须使用其他内容来终止CREATE PROCEDURE语句。