亚洲必赢娱乐第一平台Faq_php基础_脚本之家

如需转载,请评释出处!用过ORACLE的人都通晓,要想在ORACLE中修改表的列名和顺序可是一件很麻烦的事,上面给我们提供一种简易的艺术。SQL>
select object_id from all_objects where owner=’SCOTT’ and
object_name=’T1′;OBJECT_ID———-6067SQL> select
obj#,col#,name from sys.col$ where obj#=6067;OBJ# COL#———-
———-NAME————————————————————6067
1ID6067 2NAMESQL> update sys.col$ set name=’NEW_ID’ ,col#=3 where
obj#=6067 and name=’ID’;1 row updated.SQL> update sys.col$ set
name=’MY_NAME’,col#=1 where obj#=6067 and name=’NAME’;1 row
updated.SQL> update sys.col$ set col#=2 where obj#=6067 and
col#=3;1 row updated.SQL> commit;Commit complete.SQL> select *
from scott.t1;ID NAME———- ——————–3 cheng2 yong1 xin2
gototop1 topcio2 yongxin1 cyx7 rows selected.SQL> shutdown
immediateDatabase closed.Database dismounted.ORACLE instance shut
down.SQL> startupORACLE instance started.Total System Global Area
128159368 bytesFixed Size 732808 bytesVariable Size 117440512
bytesDatabase Buffers 8388608 bytesRedo Buffers 1597440 bytesDatabase
mounted.Database opened.SQL> select * from scott.t1;MY_NAME
NEW_ID——————– ———-cheng 3yong 2xin 1gototop 2topcio
1yongxin 2cyx 17 rows
selected.到此甘休大家已经把SCOTT.T1表中的列名和一一都给该了,若是您只想更正各类而不想订正列名,只需再开展UPDATE就足以了,之所以不可能叁次到位是因为SYS.COL$中COL#,NAME都以UNIQUE的。这种格局固然存在一定风险,但对于超级大的表效果是很刚毅的,而用平时的艺术将索要更加多的囤积空间、回滚段和岁月支出。

发表评论

电子邮件地址不会被公开。 必填项已用*标注