文章目录
本文介绍了社区版 OceanBase 数据库的一些基本操作。
1、创建数据库
使用 CREATE DATABASE 语句创建数据库。
示例如下:
创建数据库 test1,并指定字符集为 UTF8MB4。
obclient> CREATE DATABASE test1 DEFAULT CHARACTER SET UTF8MB4;
Query OK, 1 row affected
创建读写属性的数据库 test2。
obclient> CREATE DATABASE test2 READ WRITE;
Query OK, 1 row affected
使用 USE DATABASE 切换到 test1 数据库中。
obclient> USE test1;
Database changed
使用 SHOW DATABASES 列出当前数据库服务器中所有的数据库。
obclient> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| oceanbase |
| test1 |
+--------------------+
7 rows in set
2、表操作
在 OceanBase 数据库中,表是最基础的数据存储单元。表包含了所有用户可以访问的数据,每个表包含多行记录,每个记录由多个列组成。
2.1、创建表
使用 CREATE TABLE 语句在数据库中创建新表。
obclient> CREATE TABLE test (c1 int primary key, c2 VARCHAR(3));
2.2、查看表
使用 SHOW CREATE TABLE 语句查看建表语句。
obclient> SHOW CREATE TABLE test;
使用 DESCRIBE TABLE 语句查看建表信息。
示例如下:
obclient> DESCRIBE test;
使用 SHOW TABLES 语句查看指定数据库中的所有表。
obclient> SHOW TABLES FROM test;
2.3、修改表
使用 ALTER TABLE 语句来修改已存在的表的结构,包括修改表及表属性、新增列、修改列及属性、删除列等。
示例如下:
把表 test 的字段 c2 改名为 c3,并同时修改其字段类型。
obclient> DESCRIBE test;
+-------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| c1 | int(11) | NO | PRI | NULL | |
| c2 | varchar(3) | YES | | NULL | |
+-------+------------+------+-----+---------+-------+
obclient> ALTER TABLE test CHANGE COLUMN c2 c3 VARCHAR(10);
Query OK, 0 rows affected
obclient> DESCRIBE test;
+-------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+-------+
| c1 | int(11) | NO | PRI | NULL | |
| c3 | char(10) | YES | | NULL | |
+-------+----------+------+-----+---------+-------+
增加、删除列
增加列前,执行 DESCRIBE 命令查看表信息。
obclient> DESCRIBE test;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| c1 | int(11) | NO | PRI | NULL | |
| c2 | varchar(3) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set
执行以下命令,增加 c3 列。
obclient> ALTER TABLE test ADD c3 int;
Query OK, 0 rows affected
增加列后,通过 DESCRIBE 命令查看表信息。
obclient> DESCRIBE test;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| c1 | int(11) | NO | PRI | NULL | |
| c2 | varchar(3) | YES | | NULL | |
| c3 | int(11) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
3 rows in set
执行以下命令,删除 c3 列。
obclient> ALTER TABLE test DROP c3;
Query OK, 0 rows affected
obclient> DESCRIBE test;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| c1 | int(11) | NO | PRI | NULL | |
| c2 | varchar(50) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set
设置表 test 的副本数,并且增加列 c5。
obclient> A