• 示例:修改表 t2 中字段 d 的字段类型。
  1. Query OK, 0 rows affected (0.04 sec)
  2. obclient>ALTER TABLE t2 MODIFY d CHAR(10);
  3. Query OK, 0 rows affected (0.04 sec)
  • 示例:增加、删除列。

    1. obclient> CREATE TABLE test (c1 NUMBER(30) PRIMARY KEY,c2 VARCHAR(50));
    2. Query OK, 0 rows affected (0.07 sec)
  • 增加列前,执行DESCRIBE test; 命令查看表信息:

    1. obclient> DESCRIBE test;
    2. +-------+--------------+------+-----+---------+-------+
    3. | FIELD | TYPE | NULL | KEY | DEFAULT | EXTRA |
    4. +-------+--------------+------+-----+---------+-------+
    5. | C1 | NUMBER(30) | NO | PRI | NULL | NULL |
    6. | C2 | VARCHAR2(50) | YES | NULL | NULL | NULL |
    7. +-------+--------------+------+-----+---------+-------+
  • 执行以下命令增加 c3 列:

  • 增加列后,执行DESCRIBE test; 命令查看表信息:

    1. +-------+--------------+------+-----+---------+-------+
    2. | FIELD | TYPE | NULL | KEY | DEFAULT | EXTRA |
    3. +-------+--------------+------+-----+---------+-------+
    4. | C1 | NUMBER(30) | NO | PRI | NULL | NULL |
    5. | C3 | NUMBER(30) | YES | NULL | NULL | NULL |
    6. +-------+--------------+------+-----+---------+-------+
    7. 3 rows in set (0.00 sec)
  • 执行以下命令删除 c3 列:

    1. obclient> ALTER TABLE test DROP column c3;
    2. Query OK, 0 rows affected (0.02 sec)
  • 删除列后,执行 DESCRIBE test; 命令查看表信息:

    1. obclient> DESCRIBE test;
    2. +-------+--------------+------+-----+---------+-------+
    3. | FIELD | TYPE | NULL | KEY | DEFAULT | EXTRA |
    4. +-------+--------------+------+-----+---------+-------+
    5. | C1 | NUMBER(30) | NO | PRI | NULL | NULL |
    6. | C2 | VARCHAR2(50) | YES | NULL | NULL | NULL |
    7. +-------+--------------+------+-----+---------+-------+
    8. 2 rows in set (0.00 sec)
  • 为非模板化二级分区表 t_range_range1 添加二级分区 p1_r4。
  1. obclient>ALTER TABLE t_range_range1 MODIFY partition p1 ADD subpartition p1_r4 values less than (400);
  2. Query OK, 0 rows affected (0.08 sec)
  • 删除非模板化二级分区表 t_range_range1 的二级分区 p2_r1。
  1. Query OK, 0 rows affected (0.08 sec)
  • 为非模板化二级分区表 t_range_range1 添加一级分区 p4,需要同时指定一级分区的定义和该分区下的二级分区定义。
  1. obclient>ALTER TABLE t_range_range1 ADD partition p4 values less than (500) (
  2. subpartition p4_r2 values less than (200),
  3. subpartition p5_r3 values less than (300)
  4. );
  5. Query OK, 0 rows affected (0.08 sec)
  • 为模板化二级分区表 t_range_range 添加一级分区 p3,只需要指定一级分区的定义,二级分区的定义会自动按照模板填充。
  • 清空分区表 t_log_part_by_range 的分区 M202001 和 M202002 中的全部数据。
  1. obclient> CREATE TABLE t_log_part_by_range (
  2. log_id number NOT NULL
  3. , log_value varchar2(50)
  4. , log_date date NOT NULL DEFAULT sysdate
  5. ) PARTITION BY RANGE(log_date)
  6. (
  7. PARTITION M202001 VALUES LESS THAN(TO_DATE('2020/02/01','YYYY/MM/DD'))
  8. , PARTITION M202002 VALUES LESS THAN(TO_DATE('2020/03/01','YYYY/MM/DD'))
  9. , PARTITION M202003 VALUES LESS THAN(TO_DATE('2020/04/01','YYYY/MM/DD'))
  10. , PARTITION M202004 VALUES LESS THAN(TO_DATE('2020/05/01','YYYY/MM/DD'))
  11. , PARTITION M202005 VALUES LESS THAN(TO_DATE('2020/06/01','YYYY/MM/DD'))
  12. , PARTITION MMAX VALUES LESS THAN (MAXVALUE)
  13. );
  14. Query OK, 0 rows affected (0.08 sec)
  15. Query OK, 0 rows affected (0.05 sec)