在临时表的指定字段前面插入字段 (使用于sql2000数据库)

本文介绍了一种在SQL Server中创建临时表并在指定字段前插入新字段的方法。通过使用系统存储过程和配置选项,可以实现对临时表列顺序的调整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要:在临时表的指定字段前面插入字段
  在临时表的指定字段前面插入字段
  问题描述:
   使用下面的代码创建一个临时表,怎么样才能在‘长度’字段之前插入一个字段?
  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 行)
  --*/

转载于:https://www.cnblogs.com/inspurhaitian/archive/2008/08/27/1277298.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值