我有一个oracle脚本,我正在尝试将其转换为有效的db2语法。在这个sql文件中,我有各种对其他sql文件的调用,使用'@‘语法传入一个参数。
例如:
@script1 param1
@script2 param2有人能帮我写出有效的db2等价语句吗?在db2中有没有等效的运行命令?可以在db2中将参数传递给sql脚本吗?
谢谢,
smauel
发布于 2009-07-09 15:59:42
你要找的是DB2 Command Line Processor (CLP).
如果要执行脚本,应在CLP中执行:
db2 -vtf script1-f告诉CLP运行给定文件中的命令输入。
这是full list of options。
不幸的是,db2不支持将参数传递给脚本。您必须将db2 -vtf命令与其他脚本命令(例如sed)结合使用,才能为您生成脚本,就像在this example中一样。
发布于 2012-08-21 13:18:01
1)将filename.sql文件放在SQLLIB/BIN中
2)运行db2cmd
3)执行此命令以连接到所需的数据库
db2 connect to *dbname* user *userid* using *password*4)执行此命令
db2 -vtf *filename.sql*这将逐个执行文件中的sql语句。sql语句必须以分号结尾
发布于 2010-01-23 00:14:39
有一种更简单的传递参数的方法,对我们来说工作得很好(它可能不适用于(复杂的)多行sql语句)。
通过在每行开头添加'db2‘,将sql脚本转换为shell脚本。然后,您可以在脚本中使用shell中的标准变量替换语法。
因此,不是
insert ...
update ...你将会有
db2 insert ...
db2 update ...https://stackoverflow.com/questions/1102763
复制相似问题