adv*_*tej 1 sql oracle batch-file
我有一个更新某个表的SQL文件.但是,表名取决于安装软件的计算机名称.(像:TableFooBar-MyMachine).我必须编写一个调用Oracle SQL脚本的批处理文件,该脚本将更新此表.
那么,BatchFile - >更新.Sql - > TableFooBar-MyMachine
更新.Sql会有如下声明:
Update TableFooBar-<Machine-Name> where fooid = -99;
Run Code Online (Sandbox Code Playgroud)
此批处理文件需要在许多计算机上运行.这些表实际上有很多更新语句.我不希望别人编辑sql文件.相反,如果我在批处理文件中设置机器名并将其传递给sql,我已经完成了!如何将机器名称参数传递给.sql文件来实现此目的?
你可以使用替换变量
update.sql
--
Update TableFooBar-&1 set column_foo='bar' where fooid = -99;
--
Run Code Online (Sandbox Code Playgroud)
然后打电话
sqlplus foo/bar@db @update.sql <Machine-Name>
Run Code Online (Sandbox Code Playgroud)