2014-03-24 19 views

回答

0

循环遍历文件,执行每一个依次为:

for file in /home/user/sql_scripts/*.sql; do 
    echo "Executing $f.." 
    sqlplus user/pass @"$f" 
done 

您可以通过使用@filename.sql符号运行在sqlplus文件。

+0

解释你做了什么不会有什么伤害... – nKn

+0

只为你..:p –

0

如上由Josh解释,

使用@ sqlscript.sql在sqlplus是最好的方式,但这种技术可能无法在所有的数据库的工作,而不是你可以修改你的脚本一样,

su - <db user> 
connect to database <your db name > 

(这个根据DB2它像DB2连接到你的数据库即 再次发生变化,在Oracle连接等)

for file in /home/user/sql_scripts/*.sql; do 
    echo "Executing $f.." 
    db2 -tvf "$f" <db2> 
    @"$f"   <oracle/sqlplus etc> 
done 

修改上面的脚本为每哟你的分贝和要求。

相关问题