exec master.dbo.xp_cmdshell 'bcp "test..table1" out  c:\1.xls  -c -Swaj -Usa -P '
就可以了

解决方案 »

  1.   

    高手!
    能解释一下为什么吗?另外,如果表名中有单引号怎么办?举一个sql server的例子:
    exec master.dbo.xp_cmdshell 'bcp "Northwind..Jane''s Orders" out c:\1.xls  -c -q -Swaj -Usa -P '提示出错,怎么办呢?
      

  2.   

    这是sql server帮助中的原话:例如,Northwind 数据库内有表 Jane's Orders,该表由用户 Jane Doe 所拥有。若要使用登录 Jane Doe 和密码 go dba 将该表从 Northwind 数据库大容量复制到 Orders.txt 文件,请执行下列命令之一:bcp "Northwind.Jane Doe.Jane's Orders" out "Jane's Orders.txt" -c -q -U"Jane Doe" -P"go dba"bcp "Northwind.[Jane Doe].[Jane's Orders]" out "Jane's Orders.txt" -c -U"Jane Doe" -P"go dba"若要指定包含空格或引号的数据库名称,必须使用 -q 选项。
      

  3.   

    1:我也不知道为什么,反正这样就行,你原来那样就不行。
    2:
    Northwind..Jane''s Orders 表名有引号不知道可以不可以,至少不可以用空格吧?try:
    exec master.dbo.xp_cmdshell 'bcp Northwind..Jane''sOrders out c:\1.xls  -c -q -Swaj -Usa -P '
      

  4.   

    hehe,不好意思,我只顾拷贝过来微软的事例,最后发现northwind数据库中根本没有这个表。
    寒...
    谢谢txlicenhe(马可),结帖