首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >db2 sql脚本文件

db2 sql脚本文件
EN

Stack Overflow用户
提问于 2009-07-09 09:21:43
回答 4查看 18.1K关注 0票数 4

我有一个oracle脚本,我正在尝试将其转换为有效的db2语法。在这个sql文件中,我有各种对其他sql文件的调用,使用'@‘语法传入一个参数。

例如:

代码语言:javascript
复制
@script1 param1
@script2 param2

有人能帮我写出有效的db2等价语句吗?在db2中有没有等效的运行命令?可以在db2中将参数传递给sql脚本吗?

谢谢,

smauel

EN

回答 4

Stack Overflow用户

发布于 2009-07-09 15:59:42

你要找的是DB2 Command Line Processor (CLP).

如果要执行脚本,应在CLP中执行:

代码语言:javascript
复制
db2 -vtf script1

-f告诉CLP运行给定文件中的命令输入。

这是full list of options

不幸的是,db2不支持将参数传递给脚本。您必须将db2 -vtf命令与其他脚本命令(例如sed)结合使用,才能为您生成脚本,就像在this example中一样。

票数 10
EN

Stack Overflow用户

发布于 2012-08-21 13:18:01

1)将filename.sql文件放在SQLLIB/BIN中

2)运行db2cmd

3)执行此命令以连接到所需的数据库

代码语言:javascript
复制
 db2 connect to *dbname* user *userid* using *password*

4)执行此命令

代码语言:javascript
复制
 db2 -vtf *filename.sql*

这将逐个执行文件中的sql语句。sql语句必须以分号结尾

票数 5
EN

Stack Overflow用户

发布于 2010-01-23 00:14:39

有一种更简单的传递参数的方法,对我们来说工作得很好(它可能不适用于(复杂的)多行sql语句)。

通过在每行开头添加'db2‘,将sql脚本转换为shell脚本。然后,您可以在脚本中使用shell中的标准变量替换语法。

因此,不是

代码语言:javascript
复制
insert ...
update ...

你将会有

代码语言:javascript
复制
db2 insert ...
db2 update ...
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1102763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档