【发布时间】:2014-04-13 10:16:02
【问题描述】:
我正在对我的数据库中的一个选择文件进行批量复制。
DECLARE @cmd varchar(1000)
DECLARE @sql varchar(8000)
SET @cmd='"select * from [MyDB].[dbo].MyTable"'
SELECT @sql = 'bcp '+@cmd+' queryout C:\myfile.txt -c -t -T -S MyServer -U user -P password';
exec xp_cmdshell @sql;
如果我更改参数并在我的机器上的数据库测试上执行相同的命令,它可以工作,但在数据库服务器上我收到此错误:
Msg 121, Level 20, State 0, Line 0
A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - The semaphore timeout period has expired.)
我检查了服务器名称、用户、密码、表名,它们都是正确的,所以我无法理解我做错了什么。 有人可以帮我解决这个问题吗? 谢谢
【问题讨论】:
-
这与 SQL 无关,听起来像是网络错误,反正找到了一些关于它的 SO 帖子
标签: sql sql-server timeout bcp