使用 SQLCMD.exe 实用程序在不同凭据下运行 T-SQL 脚本

发布于 2024-11-06 09:54:34 字数 471 浏览 0 评论 0原文

我创建了一个批处理文件,并将以下行放入其中:

runas /user:internal\c39293 "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" -E -S WLDZ9454 -d ChadDb -Q "usp_Test"  

我试图在服务器 WLDZ9454 上针对 ChadDb 数据库运行存储过程 usp_Test。

当我执行它时,我只是得到有关参数选项的信息,没有错误消息,所以我不清楚我做错了什么。

请注意,当我运行代码减去尝试在不同凭据下运行的代码时,它会起作用:

"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" -E -S WLDZ9454 -d ChadDb -Q "usp_Test" 

I created a batch file and placed the following line into it:

runas /user:internal\c39293 "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" -E -S WLDZ9454 -d ChadDb -Q "usp_Test"  

I was trying to run the stored procedure usp_Test on the server WLDZ9454 against the ChadDb database.

When I execute it, I just get info regarding param options, no error mesage, so it isn't clear to me what I am doing wrong.

Note that when I run the code minus the code that attempts to run under different credentials, it works:

"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" -E -S WLDZ9454 -d ChadDb -Q "usp_Test" 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

走野 2024-11-13 09:54:34

我怀疑这是因为您没有将正在运行的程序及其参数括在引号中。

因此,SqlCmd 的执行不带任何参数。

 runas /user:internal\c39293 """C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE"" -E -S WLDZ9454 -d ChadDb -Q ""usp_Test"""

I suspect it's because you have not enclosed the program you are running and its parameters in quotes.

SqlCmd is therefore executed without any parameters.

 runas /user:internal\c39293 """C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE"" -E -S WLDZ9454 -d ChadDb -Q ""usp_Test"""
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文