更新时间:2024-10-26 GMT+08:00

RENAME 重命名表名

MySQL重命名表名的语句与GaussDB(DWS)有一些差异。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。

工具暂不支持原表名附有DATABASE(SCHEMA)的场景。

  1. MySQL通过RENAME TABLE语句修改表名。

    输入示例

    1
    2
    3
    4
    5
    # 单表重命名
    RENAME TABLE DEPARTMENT TO NEWDEPT;
    
    # 多表重命名
    RENAME TABLE NEWDEPT TO NEWDEPT_02,PEOPLE TO PEOPLE_02;
    

    输出示例

    1
    2
    3
    4
    5
    6
    --单表重命名
    ALTER TABLE "public"."department" RENAME TO "newdept";
    
    --多表重命名
    ALTER TABLE "public"."newdept" RENAME TO "newdept_02";
    ALTER TABLE "public"."people" RENAME TO "people_02";
    
  2. MySQL通过ALTER TABLE RENAME 语句修改表名,DSC工具迁移该语句时会将“AS”关键字迁移为“TO”。

    输入示例

    1
    2
    3
    4
    5
    ## A.
    ALTER TABLE runoob_alter_test RENAME TO runoob_alter_testnew;
    
    ## B.
    ALTER TABLE runoob_alter_testnew RENAME AS runoob_alter_testnewnew;
    

    输出示例

    1
    2
    3
    4
    5
    -- A.
    ALTER TABLE "public"."runoob_alter_test" RENAME TO "runoob_alter_testnew";
    
    -- B.
    ALTER TABLE "public"."runoob_alter_testnew" RENAME TO "runoob_alter_testnewnew";