云数据库 GAUSSDB-ALTER TABLE:修改表示例

时间:2024-12-19 14:11:09

修改表示例

  • 重命名表
    openGauss=# CREATE TABLE aa(c1 int, c2 int);
    openGauss=# ALTER TABLE IF EXISTS aa RENAME TO test_alt1;
  • 修改表所属模式
    --创建模式test_schema。
    openGauss=# CREATE SCHEMA test_schema;
    --把表test_alt1的所属模式修改为test_schema。
    openGauss=# ALTER TABLE test_alt1 SET SCHEMA test_schema;
    --查询表信息。
    openGauss=# SELECT schemaname,tablename FROM pg_tables WHERE tablename = 'test_alt1';
     schemaname  | tablename 
    -------------+-----------
     test_schema | test_alt1
    (1 row)
  • 修改表的所有者
    --创建用户test_user。
    openGauss=# CREATE USER test_user PASSWORD 'XXXXXXXXXX';
    -- 修改test_alt1表的所有者为test_user;
    openGauss=# ALTER TABLE IF EXISTS test_schema.test_alt1 OWNER TO test_user;
    -- 查看
    openGauss=# SELECT tablename, schemaname, tableowner FROM pg_tables WHERE tablename = 'test_alt1';
     tablename | schemaname  | tableowner 
    -----------+-------------+------------
     test_alt1 | test_schema | test_user
    (1 row)
  • 修改表的表空间
    --创建表空间tbs_data1。
    openGauss=# CREATE TABLESPACE tbs_data1 RELATIVE LOCATION 'tablespace1/tbs_data1';
    --修改test_alt1表的空间为tbs_data1。
    openGauss=# ALTER TABLE test_schema.test_alt1 SET TABLESPACE tbs_data1;
    -- 查看。
    openGauss=# SELECT tablename, tablespace FROM pg_tables WHERE tablename = 'test_alt1';
     tablename | tablespace 
    -----------+------------
     test_alt1 | tbs_data1
    (1 row)
    
    --删除。
    openGauss=# DROP TABLE test_schema.test_alt1; 
    openGauss=# DROP TABLESPACE tbs_data1; 
    openGauss=# DROP SCHEMA test_schema; 
    openGauss=# DROP USER test_user;
support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0379.html