如何更新一个表的列的顺序
有个表 Table1
其中有列 A,B,C
如何用SQL语句,才可以改变列的顺序为 A,C,B 呢?
当然用企业管理器拖拉一下就可以,我需要的是SQL语句,请赐教!
------解决方案--------------------呵呵, 不清楚,我还没有看到有关能改表的顺序的。
除非是select 表各列的显示顺序还可以。
------解决方案--------------------打开事件探查器,在企业管理器中修改的时候,跟踪一下,系统执行的也不是一条SQL语句。
------解决方案--------------------把系统表syscolumns中的列colid 的值做相应的修改。
例如:
http://topic.csdn.net/t/20021220/09/1279338.html
------解决方案--------------------新建一列 D,表中就有 A,B,C,D
update table set D=B ;
update table set B=C;
update table set C=D;
删除D列
------解决方案--------------------有个表 Table1
其中有列 A,B,C
如何用SQL语句,才可以改变列的顺序为 A,C,B 呢?
当然用企业管理器拖拉一下就可以,我需要的是SQL语句,请赐教!
1.select a,c,b into temp from Table1
2.drop table Table1
3.select * into Table1 from temp
4.drop table temp
5.列的顺序在显示时可以自由调动,更改列的顺序其意义不大.
------解决方案--------------------1、通过更改列的colid,在我本机上测试,并不能修改列的顺序。配置:Windows 2003 Server SP2 & SQL Server 2000 + SP4
2、跟踪企业管理器的操作,是删除表,再建表,导入数据。如果可以通过修改colid来决定列的顺序,MS不必多此一举。
3、修改colid对于触发器使用COLUMNS_UPDATED()会早成什么后果,尚未测试。
4、应该没有可以直接修改列顺序的SQL语句。