ft 你将查询结果输出到文本文件了阿!
如果你想直接输出用
CREATE PROCEDURE sp_zhuanchu @table varchar(20),@ymd varchar(20) AS
declare @sql varchar(50)
declare @command varchar(100)
set @sql="select * from hos_union.."+@table+" where ymd>='"+@ymd+"'"
exec(@sql)
如果你想直接输出用
CREATE PROCEDURE sp_zhuanchu @table varchar(20),@ymd varchar(20) AS
declare @sql varchar(50)
declare @command varchar(100)
set @sql="select * from hos_union.."+@table+" where ymd>='"+@ymd+"'"
exec(@sql)
set @sql="select * from hos_union.."+@table+" where ymd>='"+@ymd+"'"
应该是
set @sql='select * from hos_union..'+@table+' where ymd>='''+@ymd+''''
还有这句
set @command='bcp '+@sql+' queryout D:\gdrecv.txt -c -S r18 -U sa -P 123'
应该不对的。在queryout 前后应该有双引号的。好久不用这个做复制了。想不起来了。你看一下吧。呵呵
declare @sql varchar(50)
declare @command varchar(1000)
set @sql='"select * from hos_union..'+@table+' where ymd>='''+@ymd+'''"'
set @command='bcp '+@sql+' queryout D:\gdrecv.txt -c -S r18 -U sa -P 123'
exec master..xp_cmdshell @command
GO
declare @command varchar(2000)
set @command='bcp "select * from hos_union..'+@table+' where ymd>='''+@ymd+'''" queryout D:\gdrecv.txt -c -Sr18 -Usa -P123'
exec master..xp_cmdshell @command
GO
用法: bcp {dbtable | query} {in | out | queryout | format} datafile
.......
null
是不是搞错了?