我有一个oracle脚本,我试图转换为有效的db2语法.在这个sql文件中,我对使用'@'语法传入参数的其他sql文件进行了各种调用.
例如
@script1 param1
@script2 param2
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我使用有效的db2等效语句吗?db2中是否有等效的运行命令?是否可以将参数传递给db2中的sql脚本?
谢谢,
smauel
您所追求的是DB2命令行处理器(CLP).
如果要执行脚本,则应在CLP中执行:
db2 -vtf script1
Run Code Online (Sandbox Code Playgroud)
-f告诉CLP从给定文件运行命令输入.
这是完整的选项列表.
不幸的是,db2不支持将参数传递给脚本.您必须将db2 -vtf命令与其他脚本命令(例如sed)组合以为您生成脚本,如本例所示.
小智 5
1) 将filename.sql文件放在 SQLLIB/BIN 中
2) 运行 db2cmd
3)执行此操作以连接到所需的数据库
db2 connect to *dbname* user *userid* using *password*
Run Code Online (Sandbox Code Playgroud)
4)执行这个命令
db2 -vtf *filename.sql*
Run Code Online (Sandbox Code Playgroud)
这应该将文件中的sql语句一一执行。sql 语句必须以分号结尾