我有一个 bat 文件,当我安装我的应用程序时它会执行一堆 sql 脚本。在安装对话框中,用户设置 dbname、登录名和密码,然后在此 bat 文件中使用。这里是:
SET _server="(local)"
SET _db=dbname
SET _user=sa
SET _pswr="!#$%^&*()<>"
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regsql.exe -S %_server% -d %_db% -U %_user% -P %_pswr% -A all
"%systemdrive%\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.exe" -S %_server% -d %_db% -U %_user% -P %_pswr% -i .\createDB.sql
pause
一切正常,直到密码不包含任何特殊符号。但如果确实如此,我会收到以下错误“用户 'sa' 登录失败。”。所以很明显,密码有问题。现在的问题是:如何在 bat 文件中转义这些特殊符号?
PS:我尝试更换:
< - <
> - >
& - &
但这无济于事。
谢谢!