在临时表的指定字段前面插入字段

王朝厨房·作者佚名  2007-01-04
宽屏版  字体: |||超大  

摘要:在临时表的指定字段前面插入字段

在临时表的指定字段前面插入字段

问题描述:

使用下面的代码创建一个临时表,怎么样才能在‘长度’字段之前插入一个字段?

create table #temp(CODE varchar(50),长度 varchar(50),颜色 varchar(50), 合计 varchar(50))

/*- 一般来说,列位置不重要,处理的时候写列的列表就行了。如果一定要处理,则参考下面的示例-*/

--创建临时表

create table #temp(CODE varchar(50),长度 varchar(50),颜色 varchar(50), 合计 varchar(50))

--添加一列 alter table #temp add 新加字段 varchar(50)

go

--调整列的位置,把新加字段移动到长度的前面

EXEC sp_configure ’allow updates’,1

RECONFIGURE WITH OVERRIDE

go

update a set

colid=case when a.colid=c.colid then b.colid else a.colid+1 end,

colorder=case when a.colid=c.colid then b.colid else a.colid+1 end

from tempdb.dbo.syscolumns a,

(select colid from tempdb.dbo.syscolumns

where id=object_id(’tempdb.#temp’)

and name=N’长度’) b,

(select colid=max(colid) from tempdb.dbo.syscolumns

where id=object_id(’tempdb.#temp’)) c

where a.id=object_id(’tempdb.#temp’)

and a.colid>=b.colid

go

EXEC sp_configure ’allow updates’,0

RECONFIGURE WITH OVERRIDE

GO

--显示结果

select * from #temp

--删除临时表

drop table #temp

/*--结果

CODE 新加字段 长度 颜色 合计

------- ----------- ------- ------- -------

(所影响的行数为 0 行)

--*/

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有