有没有人知道我在下面的代码中尝试做什么是可能的,如果是的话语法是什么?这个问题是在connect调用周围,用户名似乎没有正确生成。注释掉的连接呼叫是我尝试的另一个。
-- myscript.sql
-- @params:
-- 1 - Oracle database name eg. localhost
-- 2 - Site (site01, site02 site03)
connect systemname_%2_admin/mypassword@&1;
--connect "systemname_" || "%2" || "_admin"/mypassword@&1;
begin
--execution code here.
end;
/
disconnect;
注意:调用确实需要这样,因为这将是一个针对不同用户名执行不同操作的自动脚本。
答案 0 :(得分:0)
您的参数将存储在替换变量1,2中,依此类推。
您可以使用&1
,&2
在脚本中访问它们(所以忘记%2
,它没有意义)。
现在你的问题是&2_admin
看起来像一个名为2_admin
的替换变量sqlplus所以你只需要在2.之后添加一个点.
.Dot是分隔来自以下内容的替换变量的名称。
您的连接将如下所示:
connect systemname_&2._admin/mypassword@&1
(没有;
:这是sqlplus命令而不是sql语句。)