本节主要提供数据库表的创建、修改和删除示例。

创建表

使用 CREATE TABLE 语句在数据库中创建新表。

示例如下:

  1. obclient> CREATE TABLE test (c1 int primary key, c2 VARCHAR(50)) REPLICA_NUM = 3, PRIMARY_ZONE = 'zone1';

更多CREATE TABLE语句相关的语法说明请参见 CREATE TABLE

修改表

使用ALTER TABLE语句来修改已存在的表的结构,包括修改表及表属性、新增列、修改列及属性、删除列等。

示例如下:

  • 修改表 t2 的字段 c 的字段类型。

    1. obclient> ALTER TABLE t2 MODIFY c CHAR(10);
  • 增加、删除列

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

      1. obclient> DESCRIBE test;
      2. +-------+--------------+------+-----+---------+-------+
      3. | FIELD | TYPE | NULL | KEY | DEFAULT | EXTRA |
      4. +-------+--------------+------+-----+---------+-------+
      5. | C1 | NUMBER(38) | NO | PRI | NULL | NULL |
      6. | C2 | VARCHAR2(50) | YES | NULL | NULL | NULL |
      7. +-------+--------------+------+-----+---------+-------+
      8. 2 rows in set (0.02 sec)
    • 执行以下命令,增加 c3 列。

      1. ALTER TABLE test ADD c3 int;
    • 增加列后,执行 DESCRIBE test; 命令查看表信息。

      1. obclient> DESCRIBE test;
      2. +-------+--------------+------+-----+---------+-------+
      3. | FIELD | TYPE | NULL | KEY | DEFAULT | EXTRA |
      4. +-------+--------------+------+-----+---------+-------+
      5. | C1 | NUMBER(38) | NO | PRI | NULL | NULL |
      6. | C2 | VARCHAR2(50) | YES | NULL | NULL | NULL |
      7. | C3 | NUMBER(38) | YES | NULL | NULL | NULL |
      8. +-------+--------------+------+-----+---------+-------+
      9. 3 rows in set (0.00 sec)
    • 执行以下命令,删除 c3 列。

      1. obclient> ALTER TABLE test DROP COLUMN c3;
    • 删除列后,执行 DESCRIBE test; 命令查看表信息。

      1. obclient> DESCRIBE test;
      2. +-------+--------------+------+-----+---------+-------+
      3. | FIELD | TYPE | NULL | KEY | DEFAULT | EXTRA |
      4. +-------+--------------+------+-----+---------+-------+
      5. | C1 | NUMBER(38) | NO | PRI | NULL | NULL |
      6. | C2 | VARCHAR2(50) | YES | NULL | NULL | NULL |
      7. +-------+--------------+------+-----+---------+-------+
      8. 2 rows in set (0.01 sec)
  • 设置表 test 的副本数,并且增加列 c5。

    1. obclient> ALTER TABLE test SET REPLICA_NUM=2, ADD c5 INT;

更多ALTER TABLE语句相关的语法说明请参见 ALTER TABLE

删除表

使用 DROP TABLE 语句删除表。

示例如下:

  1. obclient> DROP TABLE test;

更多 DROP TABLE 语句相关的语法说明请参见 DROP TABLE