我已启用XP_CMDSHELL
并尝试执行以下代码行:
EXEC Master..XP_CMDSHELL 'bcp "exec server.db.dbo.SProc" queryout c:\test\test.txt -k -t \t -c -S localhost -T';
但我收到以下错误:
SQLState = 37000,NativeError = 7202 错误= [Microsoft] [SQL Server Native 客户端10.0] [SQL Server]找不到 sysservers中的服务器。执行 sp_addlinkedserver添加服务器 到sysservers。
但是当我在XP_CMDSHELL
之外执行存储过程时,它工作正常。
有什么建议吗?
答案 0 :(得分:0)
请记住xp_cmdshell
在您调用它的SQL Server计算机的上下文中执行。
听起来服务器未在运行SQL Server的实际服务器上列出。如果它位于您呼叫它的同一台服务器上,请尝试使用localhost
或内部IP地址。