尝试使用-v开关将变量传递给SQL脚本(Python)非常困难,但似乎无法使语法正确。我收到以下错误:
(注意它如何从参数中删除C:并附加一个反斜杠)
[stdout] Sqlcmd:':\ Users \ Public \ MyProj \ Tests \ WorkingFolder \ Database \“':参数无效。输入' - ?'寻求帮助。
在服务器端,这是我的语法:
FILENAME = N'$(LOCATION)\MyDatabase.mdf'
以下是我的代码
_varText = 'LOCATION="C:\\Users\\Public\\MyProj\\Tests\WorkingFolder\\Database"'
command_process = SubP.Popen(['sqlcmd','-b', '-E', '-S', _server, '-v', _varText , '-d', _database, '-i', filepath],
stdin = SubP.PIPE, stdout = SubP.PIPE, stderr = SubP.STDOUT, shell = True)
答案 0 :(得分:0)
你可以尝试
_varText = 'LOCATION=\"C:\\Users\\Public\\MyProj\\Tests\WorkingFolder\\Database\"'