2

クエリエディターで次のコードを実行する必要があります

Exec xp_cmdshell 'sqlps -command "$http=New-Object system.Net.WebClient;$http.uploadString(\"http://192.168.2.3:8080/ThermalMap/DBTest.jsp\",\"param1=somevalue & param2=thriu\")"'

エラーが発生します。

しかし、次のコードはうまく機能しており、出力が得られます

Exec xp_cmdshell 'sqlps -command "$http=New-Object system.Net.WebClient;$http.uploadString(\"http://192.168.2.3:8080/ThermalMap/DBTest.jsp\",\"param1=somevalue\")"'

ここで 2 番目のコードでは、1 つのパラメーターを渡していますが、エラーは発生しません。2 つのパラメーターを渡すと、"&" 記号を追加する必要があり、エラーが発生します。ここで「&」記号をエスケープするにはどうすればよいですか?

4

1 に答える 1

3

この記事によると、次のようにアンパサンドをエスケープする必要があります^&。エスケープされていないアンパサンドは、コマンド セパレータとして扱われます。

于 2013-08-10T09:15:01.913 に答える