create dbo.expdata
@outfile varchar(1000)
as
exec('EXEC master..xp_cmdshell '''bcp Drug_db.dbo.收发记录 out '''+@outfile+''' -c -S''sysdba\sysdba'' -Usa -P -E')
GO

解决方案 »

  1.   

    create  PROCEDURE dbo.expdata
    @path varchar(50)
    as
    EXEC master..xp_cmdshell 'bcp Drug_db.dbo.收发记录 out "e:\TX3.txt" -c -S"sysdba\sysdba" -U"sa" -P"" -E'
    GO
    declare @path varchar(50)
    set @path = '"e:\TX3.txt"' 
    你试试看对不对
      

  2.   

    create dbo.expdata
    @outfile varchar(1000)
    as
    Begin
    declare @sql varchar(1200)
    set @sql='bcp Drug_db.dbo.收发记录 out "'@outfile'" -c -S"sysdba\sysdba" -U"sa" -P"" -E'
    EXEC master..xp_cmdshell @sqlEnd
    GO
      

  3.   

    不记得加+了,呵呵,下面这条才正确create dbo.expdata
    @outfile varchar(1000)
    as
    Begin
    declare @sql varchar(1200)
    set @sql='bcp Drug_db.dbo.收发记录 out "'+@outfile'+" -c -S"sysdba\sysdba" -U"sa" -P"" -E'
    EXEC master..xp_cmdshell @sqlEnd
    GO