我正在尝试从表中编写输出文本文件。我没有收到任何错误,但文件未创建。
EXEC master..xp_cmdshell 'bcp "SELECT * FROM DB.dbo.table1" queryout "C:\employee.txt" -T -Sservername -U user111 -P pwd -c -t,'
没有创建文件,我不知道为什么。任何人都可以帮忙吗?
我没有收到错误,而是收到以下消息:
usage: bcp {dbtable | query} {in | out | queryout | format} datafile
[-m maxerrors] [-f formatfile] [-e errfile]
[-n native type] [-c character type] [-w wide character type]
[-N keep non-text native] [-V file format version] [-q quoted identifier]
[-C code page specifier] [-t field terminator] [-r row terminator]
[-i inputfile] [-o outfile] [-a packetsize]
[-S server name] [-U username] [-P password]
[-T trusted connection] [-v version] [-R regional enable]
[-k keep null values] [-E keep identity values]
NULL
我在服务器A上运行它,但数据库在服务器B上。所以在服务器A上我使用了SQL SERVER管理工作室并给了服务器B详细信息以登录。之后我写了如上所述的查询。所以该文件将在哪个服务器上形成?
答案 0 :(得分:0)
在用户名和通行证之后,即使有或没有空格,也为我工作。您是否对服务器盒上的C:\有写入权限?如果您还使用-T?
,是否需要用户名或通行证?答案 1 :(得分:0)
来自MSDN:
安全提示
当 bcp 实用程序使用集成安全性连接到具有可信连接的SQL Server时,请使用 -T 选项(可信连接) { {1}} 用户名和密码组合。
答案 2 :(得分:0)
查询是正确的 -
EXEC master..xp_cmdshell 'bcp "SELECT * FROM DB.dbo.table1" queryout "C:\employee.txt"
-Sservername -U user111 -P pwd -c -t,'
在SQL SERVER MANAGEMENT工作室中输入时,我在queryout之后按下了输入,因此语句“C:\ employee.txt”-Sservername -U user111 -P pwd -c -t,'进入下一行。 因为这个我没有收到任何错误或