猿创征文|国产数据库之OceanBase的SQL详解

本文介绍了OceanBase社区版数据库的基础操作,包括数据库的创建、表的增删查改、索引管理、数据的增删改查以及事务的提交与回滚等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文介绍了社区版 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
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

湫一刀

希望大家多多支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值