Sql 更改DB2脚本中的分隔符
我已经在Docker容器中设置了DB2V11.5.5.1,并通过DBeaver访问了它 我想在DB2数据库上运行带有Sql 更改DB2脚本中的分隔符,sql,docker,db2,dbeaver,Sql,Docker,Db2,Dbeaver,我已经在Docker容器中设置了DB2V11.5.5.1,并通过DBeaver访问了它 我想在DB2数据库上运行带有CREATE PROCEDURE语句的脚本 但它返回SQL错误[42601]:在“E IF EXISTS TEMP_id”后面发现了意外的标记“END-OF-STATEMENT” 我尝试的示例脚本在这里 ——#设置分隔符$$ 创建过程过程名称() 开始 --一些声明; 结束$$ 如何在DB2脚本中解决这个分隔符问题?我认为更改分隔符的问题在于。您的错误是试图在DBEaver内部使
CREATE PROCEDURE
语句的脚本
但它返回SQL错误[42601]:在“E IF EXISTS TEMP_id”后面发现了意外的标记“END-OF-STATEMENT”
我尝试的示例脚本在这里
——#设置分隔符$$
创建过程过程名称()
开始
--一些声明;
结束$$
如何在DB2脚本中解决这个分隔符问题?我认为更改分隔符的问题在于。您的错误是试图在DBEaver内部使用Db2 CLP(命令行处理器)功能,即试图使用
--\SET TERMINATOR…
如果使用Db2 clp执行脚本(即,在MS Windows上为Db2.exe,在linux/unix上为shell中的Db2
命令),则此功能——#SET TERMINATOR
可用
对于jdbc应用程序Dbeaver,有一种不同的方法来配置替代语句终止符/分隔符。使用属性设置查找此选项并在该GUI中选择有效字符。然后重试
例如,在Dbeaver社区版2021.04中,使用:
File > Properties > Editors > SQL Exitor > SQL Processing: "Statements Delimiter"
除了将
语句分隔符
更改为有效字符外,我还必须启用忽略本机分隔符
。现在它开始工作了。