【发布时间】:2021-08-03 03:29:32
【问题描述】:
在 Oracle 数据库服务器上,我已经能够安排一个夜间作业,该作业运行从具有以下行的 powershell 脚本启动的 oracle 脚本:
sqlplus accountID/password @C:\scripts\run_scripts.sql
现在我需要在另一台 Windows 机器上实现相同的功能,其中 Oracle 的唯一功能是 SQLcl 客户端。我能够调用initial_script.sql SQL 脚本,但到目前为止只能通过三个步骤进行交互:
PS C:\sql_scripts> sql /nolog
SQL> connect id_maint/password@111.22.33.44:1521/sid
Connected.
SQL> @initial_script.sql
我需要的是从 powershell 启动 oracle initial_script.sql 脚本。我有两个障碍。
- 要连接远程数据库,我必须先在powershell命令提示符下通过
PS> sql /nolog命令获取SQLcl的SQL>提示符,然后在SQL>提示符下运行SQL> connect id_maint/password@111.22.33.44:1521/sid命令。 -
SQL> connect id_maint/password@111.22.33.44:1521/sid工作正常。但是我需要同时调用oracle脚本initial_script.sql。然而,
SQL> connect id_maint/password@111.22.33.44:1521/sid @C:\sql_scripts\initial_script.sql
发生错误。
所以我想要完成三件事(获取 SQL> 提示符 -> 连接到远程数据库 -> 调用 oracle 脚本),所有这些都由 PS> 提示符处的电源脚本启动。
如果有人可以帮助我,非常感谢。
【问题讨论】:
-
为什么将脚本的启动分成 3 行?为什么不直接使用
sql id_maint/password@111.22.33.44:1521/sid @C:\sql_scripts\initial_script.sql?与您的第一个命令相同的方式只是sql而不是sqlplus。 -
太棒了!有用!这正是我一直在寻找的!我不知道,因为 SQLcl 对我来说是新的。非常感谢!
-
太棒了!我会将其放入答案中,以便您将问题标记为已回答。