只是select显示的话很简单呀,如新加一列名为ID 使用select ID,* FROM 就可以了呀
select ID,* FROM 表 这样的话,会显示2个ID,一个在前一个在后。我觉得就把所有列都写出来 select ID,NAME,AGE FROM 表
--在指定位置插入新列 /*现有一张表TEST(A,B,C) 怎样在A和B列之间插入新列D希望结果:TEST(A,D,B,C)vivianfdlpw 2005.9 引用请保留此信息*/--创建测试环境 create table TEST ( A varchar(20), B varchar(20), C varchar(20) ) go--允许系统标更新 exec sp_configure 'allow updates','1' go reconfigure with override go--添加D列 alter table TEST add D varchar(10)--更新B,C列顺序 update syscolumns set colid=colid+1 where colid>=2 and id=object_id('TEST')--更新D列顺序 update syscolumns set colid=2 where name='D' and id=object_id('TEST')--禁用系统标更新 exec sp_configure 'allow updates','0' go reconfigure with override go
如果你有自动增加的ID,就用ID排序,如果表中有添加时间,就按时间排序咯
是这样的开始有一个表的列如下定义 c1 int IDENTITY(1,1) c2 int 然后我生成一些记录,再间中间的默写记录删除, 这时我想让c1的列的记录还保持连续,我就删除 拉表的c1的定义,然后在加一个c1的定义, 结果就发现c1到c2的后面去了!!!有没更好的方法来重新生成连续的记录???
这样的话,会显示2个ID,一个在前一个在后。我觉得就把所有列都写出来
select ID,NAME,AGE FROM 表
/*现有一张表TEST(A,B,C)
怎样在A和B列之间插入新列D希望结果:TEST(A,D,B,C)vivianfdlpw 2005.9 引用请保留此信息*/--创建测试环境
create table TEST
(
A varchar(20),
B varchar(20),
C varchar(20)
)
go--允许系统标更新
exec sp_configure 'allow updates','1'
go
reconfigure with override
go--添加D列
alter table TEST add D varchar(10)--更新B,C列顺序
update syscolumns
set colid=colid+1
where colid>=2 and id=object_id('TEST')--更新D列顺序
update syscolumns
set colid=2
where name='D' and id=object_id('TEST')--禁用系统标更新
exec sp_configure 'allow updates','0'
go
reconfigure with override
go
c1 int IDENTITY(1,1)
c2 int
然后我生成一些记录,再间中间的默写记录删除,
这时我想让c1的列的记录还保持连续,我就删除
拉表的c1的定义,然后在加一个c1的定义,
结果就发现c1到c2的后面去了!!!有没更好的方法来重新生成连续的记录???