读书人

怎么用下列语句作用到临时表呢

发布时间: 2012-02-20 21:18:23 作者: rapoo

如何用下列语句作用到临时表呢?
select * into #v from (select * from sddata where txndate < '2007-1-11 ')a

EXEC master..xp_cmdshell 'bcp "tempdb.dbo.#v " out "c:\b.txt " /S "localhost " /U "sa " /P "sa " -c '

服务器返回#v无效.
不知怎么能使用到临时表?
thanks


[解决办法]
实在不行,可以先创建一个临时表,用完后再删除

create table V()
insert into select * into V from (select * from sddata where txndate < '2007-1-11 ')a

EXEC master..xp_cmdshell 'bcp "tempdb.dbo.v " out "c:\b.txt " /S "localhost " /U "sa " /P "sa " -c '

drop table V

[解决办法]
是不是又新建了一个连接,所以临时表就不存在了.
要么改成
select * into ##v from (select * from sddata where txndate < '2007-1-11 ')a

EXEC master..xp_cmdshell 'bcp "tempdb.dbo.##v " out "c:\b.txt " /S "localhost " /U "sa " /P "sa " -c '

读书人网 >SQL Server

热点推荐