本文档旨在介绍表列表、表属性以及表数据相关信息。

表列表

登录数据库并进入 SQL 开发窗口后,在左侧导航栏中单击 标签可查看表列表。表列表中展示当前连接的数据库中存在的表对象,可在表列表中查看该对象的结构树或右键目标对象以进行管理操作。

image

结构树

如上图所示,在表列表中单击目标表名前的下弹标志会在弹出的下拉列表中展示其结构树,对象表的结构树最深有三层,右键结构树中不同层级中的项会提供对该项的一些操作键。

管理操作

在表列表中,表对象名称默认支持按头字符升序排序。 鼠标右键单击架构树中的目标项,在弹出的右键管理操作列表中 ODC 提供了一些操作键以供快速管理目标对象。下述为管理操作键表:

操作键

说明

查看表结构

进入表属性页签,全量查看表的基本信息、列、索引、约束和 DDL 等信息。

查看表数据

进入表数据页签,查看表中的数据。

导入

向当前表中导入数据。

导出

导出当前表中的数据。

下载

下载表对象的 SQL 文件。

模拟数据

进入 模拟数据 面板。

复制

复制表名、Select 语句、Insert 语句、Update 语句或 Delete 语句。

删除

删除当前表对象。

刷新

对当前表对象进行一些管理操作后,刷新结构树以展示最新信息。

管理表属性

在 SQL 开发窗口的左侧导航栏,在表列表中双击表名进入表管理页面,或者在表名右侧的更多选项中选择 查看表结构

image

基本信息

image

属性 页签的左导航栏中单击 基本信息 标签查看当前表的基本信息:

信息项

说明

表名称

显示当前表的名称,同时可在此修改表的名称。

默认字符集

当前表所用的字符集。

默认排序规则

当前表所用的排序规则。

描述

显示创建表时所添加的描述,同时可在此修改对表的描述。

所有者

表对象所在的数据库。

最近修改日期

显示最近修改表属性的日期。

行数据量

显示行数。

大小

显示数据大小。

列信息

image

在属性页签的左导航栏中单击 标签查看当前表中所包含的列。在 标签中,支持修改 名称长度非空 注释

信息项

说明

名称

指定字段(列)的名称。

类型

指定字段(列)的数据类型。

具体数据类型,请参考 OceanBase 数据库的参考指南

长度

指定类型长度。

小数点

设置类型精度。

非空

是否限制该字段(列)的值不能为空。

自增(MySQL 模式下)

选择是否为自增列。

重要
  • 每个表仅允许设置一个自增字段(列)。

  • 当一个字段(列)设置为自增后,其余字段(列)不可勾选,需取消勾选后,才可设置其它字段(列)为自增字段(列)。

虚拟列

选择是否创建虚拟列。

重要
  • 如果已勾选虚拟列,则必须填写表达式。

  • 在创建虚拟列时需要定义虚拟列依赖的表达式,虚拟列包含 Virtual Column 和 Stored Column,仅在使用时会根据表达式计算出虚拟列的值,因此在向表中插入数据的时候,不能为虚拟列指定要插入的值。

缺省值/表达式

该字段(列)的默认值/表达式。

注释

对该字段(列)的说明。

说明
  • Oracle 模式下不支持设置自增字段。

  • 列为非空时允许设置为空,列为空时不允许设置为非空。

  • 如果表中无自增字段,增加一个自增列,仅支持新建列为设置为自增列。

  • 缺省值和自增互斥,仅允许设置其中一项;仅支持修改未勾选虚拟列的列缺省值,缺省值一经设置无法取消。

  • 已设置的虚拟列不可修改,新建列可设置虚拟列。

索引信息

image

在属性页签的左导航栏中单击 索引 标签查看当前表中包含的索引。

索引 标签中,支持修改 索引名称 不可见

ODC V4.2.2 及之后的版本支持查看索引是否可用,如果索引名称显示告警图标,则表示该索引不可用。

信息项

说明

索引名称

为该索引指定的名称。

范围

默认值为 GLOBAL,支持 GLOBAL(全局索引)/LOCAL(局部索引)。

方法

默认值为 BTREE(全局索引),支持 空/BTREE/HASH

  • BTREEB 以 B+树结构存储数据,适用于在范围查找的SQL语句中。

  • HASH 索引基于 HASH 表实现,只有查询条件精确匹配 HASH 索引中的所有列才会用到 HASH 索引,仅能满足"=","IN"和"<=>"查询,HASH 索引无法用于排序,不适用于区分度小的列上,例如员工性别(gender)。

索引类型

默认值为 NORMAL,支持 NORMAL/UNIQUE/FULLTEXT

  • NORMAL 表示普通索引。

  • UNIQUE 表示唯一的、不允许重复的索引,例如员工工号(emp_no)。

  • FULLTEXT 表示全文搜索的索引,用于搜索包含大量数据的表。

选择索引所在的列,需注意索引列的顺序。

不可见

选择设置的索引是否可见。

约束信息

image

在属性页签左导航栏单击的 约束 标签查看当前表中的约束信息.

约束 标签中,支持新增/删除 唯一约束 检查约束,不可修改已有对象。

信息项

说明

约束名称

指定约束的名称。

列信息

选择一个字段或者一组字段作为约束。

关联 Schema(Oracle 模式下)

使用 外键约束 时需指定关联表(父表)所在的 Schema。

关联数据库(MySQL 模式下)

使用 外键约束 时需指定关联表(父表)所在的数据库。

关联表

使用 外键约束 时需指定关联表(父表)。

关联字段

使用 外键约束 时需指定关联字段(父表)。

删除

指定删除关联表(父表)中的数据时,当前表(子表)对应的动作。

可指定 CASCADENO ACTION、RESTRICTSET NULL 等四种对应的动作。

MySQL 和 Oracle 模式下所支持的外键动作不同:

  • MySQL 模式下,OceanBase 可指定 CASCADE、NO ACTION、RESTRICT 和 SET NULL;

  • Oracle 模式下,OceanBase 可指定 CASCADE、NO ACTION 和 SET NULL。

    重要

    OceanBase 暂不支持SET NULL动作。 相关语法,请参考OceanBase或 MySQL/Oracle 官网文档。

更新

指定更新关联表(父表)中的数据时,当前表(子表)对应的动作。

可指定 CASCADENO ACTIONRESTRICT SET NULL 等四种对应的动作。

MySQL 和 Oracle 模式下所支持的外键动作不同:

  • MySQL 模式下,OceanBase 可指定 CASCADE、NO ACTION、RESTRICT 和 SET NULL;

  • Oracle 模式下,OceanBase 可指定 NO ACTION。

重要

OceanBase 暂不支持 SET NULL 动作。 相关语法,请参考OceanBase或 MySQL/Oracle 官网文档。

检查条件

指定执行 检查约束 时校验数据的检查规则。

说明
  • 不同约束方法支持的功能键不同,当导航栏中功能键为灰色或不存在时,表明该约束方法暂不支持该操作。

  • 外键约束:OceanBase Oracle 模式支持通过all_constraints查询外键;OceanBase MySQL 模式自 OBServer V2.2.6 版本起,支持通过 information_schema.key_column_usage 查询外键。

  • 仅 OceanBase Oracle 模式支持检查约束功能。

分区信息

image

由于在 MySQL 模式和 Oracle 模式下分区的定义不同,因此以下信息在不同模式下的意义略有不同,请根据所选的分区方法按其定义指定以下信息:

信息项

说明

分区方法

指定分区方法。 MySQL 模式和 Oracle 模式下支持的分区方法不同。

  • Range 分区:基于一个给定连续区间的列值,将多行分配给分区。范围必须是有序的、连续的和不重叠的。

  • List 分区:基于数据的枚举值进行分区。

  • Hash 分区:基于给定的分区个数进行分区。对于分布规则不明显的数据,并没有明显的范围查找等特征,可以使用HASH分区,将数据分区列的值按照HASH算法打散到不同的分区上,将数据随机分布到各个分区。

  • Key 分区:类似于按 HASH 分区,区别在于 KEY 分区只支持计算一列或多列,且 MySQL 服务器提供其自身的哈希函数。必须有一列或多列包含整数值。

有关分区方法,请参见OceanBase 数据库分区表

字段

选择作为分区键的字段。

表达式

根据表达式的返回值进行分区(Oracle 模式下不支持分区表达式)。

分区

根据所选的 分区方法,可能需要指定 分区名称分区数量区间上限值 值枚举 等信息。 可添加多个分区,并拖动已选字段进行排序。

DDL 信息

image

可在 属性 页签中单击左导航栏中的 DDL 标签,查看当前表的 DDL 语句(即查看定义当前表的 SQL 语句,不支持编辑)。

管理表数据

  1. 在 SQL 开发窗口的左侧导航栏,在表列表中双击表名进入表管理页面,或者在表名右侧的更多选项中选择 查看表数据

    image

  2. 查看表数据 页签中,可对当前表中的数据进行查看、新增、修改和删除。

    编辑数据具体步骤请参见结果编辑与导出

    image

    重要

    ODC 中共享 Session,相同连接只有一个 Session。在 Oracle 模式下,ODC V2.3.2 之后版本自动提交默认设置为关,所以您需要手动提交事务。可以在 全局变量 页面修改变量 autocommit 的值进行设置,具体操作请参见会话管理

说明

表属性和数据页面中,工具栏相关功能键说明,请参见常用功能简介