bcp

select @cmd1 ='bcp report.dbo.report_acc in  "'+@filename+'"  -c -t "|" -r \n -SWANGLIXUE -Usa -Psa'exec master..xp_cmdshell @cmd1我要将某个文件中的数据导入表中
@filename 是动态目录的名字,想我上面那样写不行,不知道为什么?

解决方案 »

  1.   

    bat命令吗?
    还是存储过程?
      

  2.   

    证实方法很简单啊
    printf @cmd1 
    把输出拷出来,比较看看哪写错了,既然你都问了这个问题,你肯定是对命令本身很熟悉了
    这个帖子应该转到sqlserver区
    exec master..xp_cmdshell @cmd1 
    呵呵
      

  3.   

    我测过后发上来的declare @filename varchar(255)
    declare @cmd varchar(255)
    set @filename='c:\test.txt'set @cmd= 'bcp "select * from Northwind.dbo.Employees" queryout "''+@filename+''" -F 2 -c -S "127.0.0.1" -U"sa" -P"11111111"'
    exec master..xp_cmdshell @cmdset @cmd= 'bcp Northwind.dbo.Employees in "''+@filename+''" -c -S "127.0.0.1" -U sa -P 11111111'
    exec master..xp_cmdshell @cmd