我在密码中遇到特殊字符问题 - ' @'。 问题我不知道如何将带有此特殊字符的密码传递给脚本文件并使用sqlplus进行连接。
例如我有用户' test_user'密码' temp123 @'。对于通过sqlplus登录,我使用以下字符串进行转义:sqlplus test_user/\"temp123@\"@some-db:1521/SID
它运作良好。对于我的情况,我需要传递密码作为sql脚本的参数。例如,我有以下脚本连接(实际上脚本使用几对登录/密码一次更新许多用户):
-- @deploy.sql
connect &&2./&&3.@&&1.
由于密码与' @'无法通过sqlplus正确解释。我尝试从google转发许多建议,但大多数建议适用于sqlplus调用的连接字符串。对于我的情况,它是传递给脚本的参数所必需的。
答案 0 :(得分:4)
使用:cmd.exe而不是PowerShell窗口
if not :
在powershell windows中的:sqlplus'login / \“P @ $$ w0rd \”@ TNS_NAME'
在cmde.exe中:sqlplus登录/ \“P @ $$ w0rd \”@ TNS_NAME
答案 1 :(得分:0)
只需连接字符串中的引号:
connect &&2./"&&3."@&&1.