oralce如何调整表字段的顺序
上一篇 /
下一篇 2021-10-27 15:00:56
/ 个人分类:数据库
测试过程中发现,如果主表和B表表字段的顺序不一致,会导致数据转储到B表时出现数据错位存储,因为需要调整数据转储涉及到的所有B表的字段顺序,使其与主表完全一致。
步骤1、执行如下语句
-- 调整B表字段的顺序与主表顺序一致,红色字体部分可修改
SELECT 'update sys.col$ set COL#='||aa.COL# ||' where obj#='''||BB.OBJ#||''' and NAME= '''||BB.NAME||''';' AS SQLYJ,
bb.*,aa.* FROM
(select object_name,obj#,col#,name from sys.col$ col,all_objects obj
where obj.owner = 'NHIS_LB' and col.obj#=obj.object_id
and obj.object_name ='
CN_PRESCRIPTION'||'_B')bb,
(select object_name,obj#,col#,name from sys.col$ col,all_objects obj
where obj.owner = 'NHIS_LB' and col.obj#=obj.object_id
and obj.object_name ='
CN_PRESCRIPTION')aa
where BB.NAME=aa.NAME AND BB.COL#<>aa.COL#
步骤3、以管理员身份登录oracle数据库
sqlplus system/密码@数据库IP:端口/实例名
conn /as sysdba;
步骤4、复制步骤2的sql语句,粘贴到步骤3的窗口
步骤5、提交
commit;
步骤6、如果提交后没有成功,可能需要重启服务
shutdown immediate
startup
收藏
举报
TAG: