ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 10g的在线重定义实验

10g的在线重定义实验

原创 Linux操作系统 作者:byfree 时间:2008-05-22 10:42:41 0 删除 编辑

参考杨大师的:http://space.itpub.net/4227/viewspace-168447

10g在dbms_redefinition包中增加了COPY_TABLE_DEPENDENTS过程,用于索引、约束、触发器、统计信息和授权的表的在线重定义

实验过程:
SQL> select table_name,index_name,column_name from user_ind_columns where table_name='FUNCTIONS_INFO';

TABLE_NAME                INDEX_NAME                     COLUMN_NAME
------------------------- ------------------------------ ------------------------------
FUNCTIONS_INFO            FUNCINFO_GAMEKID_IDX           GAME_KIND_ID
FUNCTIONS_INFO            SYS_C007875                    FUNCTION_ID

SQL> create table functions_info_m as select * from functions_info where 1=0;

SQL> exec dbms_redefinition.can_redef_table('WEP','FUNCTIONS_INFO');

PL/SQL procedure successfully completed.

SQL> exec dbms_redefinition.start_redef_table('WEP','FUNCTIONS_INFO','FUNCTIONS_INFO_M');

PL/SQL procedure successfully completed.

SQL> var v_num number                                                                     
SQL> exec dbms_redefinition.copy_table_dependents('WEP','FUNCTIONS_INFO','FUNCTIONS_INFO_M',dbms_redefinition.cons_orig_params,true,true,true,true,:v_num,true);

PL/SQL procedure successfully completed.

SQL> exec dbms_redefinition.finish_redef_table('WEP','FUNCTIONS_INFO','FUNCTIONS_INFO_M');

PL/SQL procedure successfully completed.

SQL> select table_name,index_name,column_name from user_ind_columns where table_name='FUNCTIONS_INFO';

TABLE_NAME                INDEX_NAME                     COLUMN_NAME
------------------------- ------------------------------ ------------------------------
FUNCTIONS_INFO            SYS_C007875                    FUNCTION_ID
FUNCTIONS_INFO            FUNCINFO_GAMEKID_IDX           GAME_KIND_ID

SQL> select table_name,index_name,column_name from user_ind_columns where table_name='FUNCTIONS_INFO_M';

TABLE_NAME                INDEX_NAME                     COLUMN_NAME
------------------------- ------------------------------ ------------------------------
FUNCTIONS_INFO_M          TMP$$_FUNCINFO_GAMEKID_IDX0    GAME_KIND_ID
FUNCTIONS_INFO_M          TMP$$_SYS_C0078750             FUNCTION_ID

这样重定义后的索引名也与原来同名了,完整的完成了一个table的在线重定义。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/17997/viewspace-293481/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Discuz的安装
请登录后发表评论 登录
全部评论

注册时间:2008-04-16

  • 博文量
    65
  • 访问量
    232611