在一个表中如何插入一个字段到指定的位置 ( 积分: 100 )

  • 主题发起人 主题发起人 malaya
  • 开始时间 开始时间
M

malaya

Unregistered / Unconfirmed
GUEST, unregistred user!
在一个表中如何插入一个字段到指定的位置
比如原结构: 编号,姓名,部门
现插入一个性别
插入后结构:编号,姓名,性别,部门
用ALERT 只能增加到最后一位
 
SQL语句不支持这样的操作,除非用企业管理器(SQL SERVER)修改
用SQL有两个方法:
1.重建此表
2.新增 性别,部门1 两字段, 把数据从 部门 复制到 部门1,删除 部门 字段,改 部门1 为 部门
 
即便是 编号,姓名,部门,性别
但楼主可以通过SELECT中指定字段顺序来达到 编号,姓名,性别,部门
这样的目的?

难道是特殊的需求?
 
先添加字段
在对应syscolumns中update对应的表的字段值的顺序!

eg.
create table table_test(id int,code varchar(10))

alter table table_test add name varchar(20)

exec sp_configure 'allow update',1
reconfigure with override

update syscolumns
set colid = colid + 1
where name in ('code','name') and id = object_id('table_test')
GO

update syscolumns
set colid = 2
where name = 'name' and id = object_id('table_test')

exec sp_configure 'allow update',0
reconfigure with override
 
感谢Avalon,感谢轻舞肥羊,感谢CCTV,感谢SMG,感谢我的......
 
多人接受答案了。
 
后退
顶部