在TFS发行版中,我希望使用命令行任务来备份SQL数据库,如下所示:
工具:SqlCmd
参数:-U 用户名 -P 密码 -S sqlserver \ instance –Q“ BACKUP DATABASE [ mydatabase ] TO DISK =' X:\ SomePath \ mydatabase.bak 'WITH COPY_ONLY“
如果我复制/粘贴并在命令窗口中运行它,则输出到TFS日志中的结果命令将起作用。
但是由于某些原因,TFS在尝试执行命令时会引发错误。
以下是日志信息:
2018-06-22T02:45:02.1384055Z ## [命令] SqlCmd -U 用户名 -P 密码 -S sqlserver \ instance –Q“备份数据库[ mydatabase ] TO DISK =' X:\ SomePath \ mydatabase.bak 'WITH COPY_ONLY”
2018-06-22T02:45:02.2009053Z Sqlcmd:'-Q“备份数据库[ABS-dev]到 DISK ='D:\ SQLBACKUP \ ABS-dev_Release.bak'WITH COPY_ONLY':意外 论点。输入“-?”求助。 2018-06-22T02:45:02.2634060Z
[错误]进程已完成,退出代码为1。
我想知道是否有一个提示错误的行没有用双引号终止,并且尝试了诸如在查询段周围添加其他双引号的操作,但是到目前为止还算不上成功。
有什么想法吗?
答案 0 :(得分:0)
您可以在下面尝试使用参数,使用/Q
代替-Q
:
-U username -P password -S sqlserver\instance /Q "BACKUP DATABASE [mydatabase] TO DISK='X:\SomePath\mydatabase.bak' WITH COPY_ONLY"