文档下载建议反馈入口

  • 关系表
  • 字段
  • 约束
  • 外键
  • 索引
  • 权限

关系表管理

KaiwuDB 开发者中心支持管理关系表以及表中的字段、约束、外键、索引、权限等元素。

关系表

KaiwuDB 开发者中心支持创建、编辑、查看、截断、删除、重命名关系表,向表中写入数据或从表中读取数据、查看关系表的 ER 图,以及为关系表生成 SQL 语句。

前提条件

  • 创建、编辑、截断关系表
    • 非三权分立模式下,用户为 Admin 用户、Admin 角色成员或拥有 TABLE CREATE 或 ALL 权限。
    • 三权分立模式下,用户是 sysadmin 角色的成员或者是拥有所属数据库 CREATE 权限的普通用户。默认情况下,sysroot 用户属于 sysadmin 角色。
  • 重命名表
    • 重命名当前数据库中的表
      • 非三权分立模式下,用户拥有表所属数据库的 CREATE 权限和原表的 DROP 权限。当表存在视图依赖时,系统不支持重命名表。
      • 三权分立模式下,用户是 sysadmin 角色的成员或者是拥有所属数据库的 CREATE 权限和原表的 DROP 权限的普通用户。默认情况下,sysroot 用户属于 sysadmin 角色。当表存在视图依赖时,系统不支持重命名表。
    • 重命名表并将其迁移表到其他模式下
      • 非三权分立模式下,用户拥有目标数据库的 CREATE 权限和原表的 DROP 权限。
      • 三权分立模式下,用户是 sysadmin 角色的成员或者是拥有目标数据库的 CREATE 权限和原表的 DROP 权限的普通用户。默认情况下,sysroot 用户属于 sysadmin 角色。
    • 重命名表并将其迁移表到其他数据库
      • 非三权分立模式下,用户拥有目标数据库的 CREATE 权限和原表的 DROP 权限。
      • 三权分立模式下,用户是 sysadmin 角色的成员或者是拥有目标数据库的 CREATE 权限和原表的 DROP 权限的普通用户。默认情况下,sysroot 用户属于 sysadmin 角色。
  • 删除关系表
    • 非三权分立模式下,用户为 Admin 用户、Admin 角色成员或拥有 TABLE DROP 权限。
    • 三权分立模式下,用户是 sysadmin 角色的成员或者是拥有目标表 DROP 权限的普通用户。默认情况下,sysroot 用户属于 sysadmin 角色。
  • 从关系表中导出数据
    • 非三权分立模式下,用户是 admin 角色的成员。默认情况下,root 用户属于 admin 角色。
    • 三权分立模式下,用户是 sysadmin 角色的成员。默认情况下,sysroot 用户属于 sysadmin 角色。
  • 向关系表中写入数据
    • 非三权分立模式下,用户是 admin 角色的成员。默认情况下,root 用户属于 admin 角色。
    • 三权分立模式下,用户是拥有目标表 INSERT 权限的普通用户。

创建关系表

如需创建关系表,遵循以下步骤。

  1. 在数据库导航区,选择要操作的数据库和模式。

  2. 右键单击,然后选择新建表

    系统将自动创建名为 newtable 的表,并打开对象窗口。

  3. 在对象窗口,填写表名、描述信息、添加字段,然后单击保存

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

编辑关系表

输入以下特殊数据类型时,需要进行特殊处理:

  • JSONB 类型:需要在数值查看器中手动输入数据。

  • BYTEA 类型:使用外部程序将二进制数据输入到数据库中,或者在数值查看器中手动输入数据。

  • TIMESTAMP 类型:输入 TIMESTAMPTIMESTAMPTZ 类型数据时,日期部分需要使用短横线(-)、空格()或正斜杠符号(/)分割,时间部分需要使用冒号(:)分割,支持精确到微秒,例如:2023-01-25 10:10:10.1232023 01 25 10:10:10.1232023/01/25 10:10:10.123

如需向关系表中写入数据或者修改表中数据,遵循以下步骤。

  1. 在数据库导航区,右键单击需要修改的表,然后选择编辑表

  2. 属性页签,编辑字段、约束、外键、索引或权限,然后单击保存

  3. 切换到数据页签,单击表格最下方的添加新行按钮,向表中加入相应的数据。

  4. 如需修改已有数据,直接双击数据进行修改。

  5. 如需查看相应的 SQL 语句,单击生成 SQL 语句,然后单击执行

  6. 如果无需查看 SQL 语句,单击保存

查看关系表

在数据库导航区,双击要查看的表,即可查看时序表的属性、数据和 ER 图信息。

下表列出了属性、数据和 ER 图中的信息:

页面信息
属性表名、描述、字段、约束、外键、索引、权限和建表语句等信息。
数据以网格和文本形式查看表内数据。
ER 图以图形方式展示数据库实体、属性和关系之间的结构和链接。

提示

  • 如果表中包含大量数据行,可以通过工具栏查看数据的总行数,设置每页显示的行数(默认 100 行),并通过点击第一页、上一页、下一页和最后一页图标来分页查看。
  • 设置每页显示行数后,需要点击第一页、上一页、下一页或最后一页图标,以查看生效后的分页效果。

截断关系表

如需截断关系表,遵循以下步骤。

  1. 在数据库导航区,右键单击需要截断的表,然后选择工具 > 截断

  2. 截断表窗口,选择是否在单独的事务中运行以及是否级联,然后单击复制确定

    系统将自动弹出截断表窗口,显示进度及是否完成截断。

说明

完成截断后,双击已截断的表即可查看是否已清除数据。

删除关系表

如需删除关系表,遵循以下步骤。

  1. 在数据库导航区,右键单击需要删除的表,然后选择删除

  2. 删除对象窗口,选择是否需要级联删除,然后单击

重命名关系表

说明

新表名必须唯一,并且遵循数据库标识符规则

如需重命名关系表,遵循以下步骤。

  1. 在数据库导航区,右键单击需要重命名的表,然后选择重命名

  2. 重命名窗口,编辑表名称,然后单击确定

显示 ER 图

在数据库导航区,右键单击需要查看 ER 图的表,然后选择显示 ER 图

导出数据

如需导出关系表中的数据,遵循以下步骤。

  1. 在数据库导航区,右键单击需要导出数据的表,然后选择导出数据
  2. 数据转化窗口,根据需要设置目标类型和格式、提取行数、导出参数、导出目录等,确认设置后单击确定。系统将自动切换到转化进度界面,显示数据导出是否成功以及所用时长。

导入数据

如需向关系表中导入数据,遵循以下步骤。

  1. 在数据库导航区,右键单击需要导入数据的表,然后选择导入数据

  2. 数据转化窗口,选择从 CSV 文件导入,设置源端名称、根据需要完成导入设置,然后单击下一步

  3. 预览数据导入过程界面,确认预览数据,然后单击下一步

  4. 数据加载设置界面设置数据加载方式、执行过程和打开方式,然后单击下一步

  5. 检查确认界面检查导入设置,然后单击确定。系统将自动切换到转化进度界面,显示数据导入是否成功以及所用时长。

生成 SQL 语句

KaiwuDB 开发者中心支持为指定表生成以下 SQL 语句:

  • SELECT
  • INSERT
  • UPDATE
  • DELETE
  • MERGE
  • DDL

如需为关系表生成 SQL 语句,遵循以下步骤。

  1. 在数据库导航区,右键单击需要生成 SQL 语句的表,选择生成 SQL,然后选择需要生成的 SQL 语句。

  2. 生成 SQL 语句窗口,选择是否使用标准名称紧凑型 SQL,然后单击复制关闭

    默认情况下,使用标准名称,不使用紧凑型 SQL。

字段

字段页面以表格的形式展示字段名、列表序号、数据类型、长度、数组、字符集、非空、默认值和描述信息。

前提条件

  • 需要添加、修改、删除、重命名字段的关系表不在读写过程中。
  • 非三权分立模式下,用户拥有目标表的 CREATE 或 ALL 权限。
  • 三权分立模式下,用户是 sysadmin 角色的成员或者是拥有目标表 CREATE 权限的普通用户。默认情况下,sysroot 用户属于 sysadmin 角色。

创建字段

如需为关系表添加字段,遵循以下步骤。

  1. 单击字段右下角的新建字段按钮,或者右键单击字段页面空白处,然后选择新建字段

  2. 编辑属性窗口,编辑字段名称和属性,然后单击确定

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

修改字段

如需修改关系表的字段,遵循以下步骤。

  1. 双击需要编辑的字段信息,即可编辑字段。

  2. 单击页面右下方的保存按钮。

  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

删除字段

如需删除关系表的字段,遵循以下步骤。

  1. 右键单击需要删除的字段,然后选择删除

  2. 单击页面右下方的保存按钮。

  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

重命名字段

如需重命名关系表的字段,遵循以下步骤。

  1. 右键单击需要重命名的字段,然后选择重命名

  2. 重命名窗口,编辑字段名称,然后单击确定

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

生成 SQL 语句

如需为关系表的字段生成 SQL 语句,遵循以下步骤。

  1. 右键单击字段,选择生成 SQL > DDL

  2. 生成 SQL 语句窗口,选择是否使用标准名称紧凑型 SQL,然后单击复制关闭

    默认情况下,使用标准名称,不使用紧凑型 SQL。

约束

约束页面以表格的形式展示约束名称、所有者、类型、表达式和是否禁用信息。KaiwuDB 开发者中心支持以下三种约束:

  • 主键(PRIMARY KEY,或 PK)约束
  • 唯一键(UNIQUE KEY,或 UK)约束
  • 检查约束(CHECK):用于约束表中某列或某些列中可接受的数值或者数据格式。单个列可以应用一个或多个检查约束。多个列也可以共用一个检查约束。删除指定表后,也同时删除该表的检查约束。

创建约束

如需为关系表创建约束,遵循以下步骤。

  1. 单击约束页面右下方的新建约束按钮,或者在约束页面,右键单击新建约束

    • 新建约束页面

    • 右键菜单页面

  2. 添加约束窗口,设置约束名称,然后选择约束类型和字段。

  3. 如果选择新建检查约束,需要添加相应的约束表达式。

  4. 单击确定

  5. 单击页面右下方的保存按钮。

  6. 执行修改窗口,确认 SQL 语句无误后,然后单击执行

编辑约束

KaiwuDB 开发者中心支持修改约束的名称。

如需修改关系表的约束,遵循以下步骤。

  1. 双击需要编辑的约束。

  2. 约束页面,编辑约束名称。

  3. 单击页面右下方的保存按钮。

  4. 执行修改页面检查 SQL 语句无误后,单击执行

删除约束

如需删除关系表的约束,遵循以下步骤。

  1. 右键单击需要删除的约束,然后选择删除
  2. 单击页面右下方的保存按钮。
  3. 执行修改窗口,确认 SQL 语句无误后,然后单击执行

重命名约束

如需重命名关系表的约束,遵循以下步骤。

  1. 右键单击需要重命名的约束,然后选择重命名

  2. 重命名窗口,编辑约束名称,然后单击确定

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

外键

外键(Foreign Key)是关系数据库的一种机制,可以引用其他关系模式的主键(Primary Key,PK)或唯一键(Unique Key,UK)。

前提条件

  • 创建外键:已创建两张关系表,且两张表都设置了主键或唯一键。

创建外键

如需为关系表创建外键,遵循以下步骤。

  1. 双击需要添加外键的表,打开对象窗口。

  2. 切换到外键页签,右键单击页签空白处,然后选择新建外键

  3. 编辑外键窗口,选择模式、参照表、唯一键,添加表字段,选择删除和更新外键时的动作,然后单击确定。外键页签将自动更新新建外键的信息。

    说明

    选择的字段必须是主键、唯一键或者索引。

  4. 单击页面右下方的保存按钮。

  5. 执行修改窗口,确认 SQL 语句无误,然后单击执行

    系统将自动校验外键数据。如发现数据不匹配,系统报错,要求人工检查是否已修改数据。

校验数据

KaiwuDB 开发者中心保存外键时会自动校验外键数据,也支持对外键进行额外数据校验。

如需为关系表校验外键数据,遵循以下步骤。

  1. 右键单击需要校验数据的外键,然后选择校验数据

  2. 单击页面右下方的保存按钮。

  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

编辑外键

如需编辑关系表的外键,遵循以下步骤。

  1. 双击需要编辑的外键,即可对外键进行重命名操作。

  2. 单击页面右下方的保存按钮。

  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

删除外键

如需删除关系表的外键,遵循以下步骤。

  1. 右键单击需要删除的外键,然后选择删除
  2. 单击页面右下方的保存按钮。
  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

重命名外键

如需重命名关系表的外键,遵循以下步骤。

  1. 右键单击需要重命名的外键,然后选择重命名

  2. 重命名窗口,编辑外键名称,然后单击确定

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

生成 SQL 语句

如需为关系表的外键生成 SQL 语句,遵循以下步骤。

  1. 右键单击指定外键,然后选择生成 SQL > DDL

  2. 生成 SQL 语句窗口,选择是否使用标准名称紧凑型 SQL,然后单击复制关闭

    默认情况下,使用标准名称,不使用紧凑型 SQL。

索引

索引页面显示已创建的主键和唯一键。

创建索引

如需为关系表创建索引,遵循以下步骤。

  1. 双击需要添加索引的表,打开对象窗口。

  2. 切换到索引页签,右键单击页签空白处,然后选择新建索引

  3. 编辑索引窗口,选择是否为唯一索引和字段,然后单击确定。索引页签将自动更新索引信息。

  4. 单击页面右下方的保存按钮。

  5. 执行修改窗口,确认 SQL 语句无误,然后单击执行

编辑索引

如需编辑关系表的索引,遵循以下步骤。

  1. 右键单击索引,然后选择编辑索引,或者双击需要编辑的索引,即可对索引进行重命名操作。
  2. 单击页面右下方的保存按钮。
  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

删除索引

如需删除关系表的索引,遵循以下步骤。

  1. 右键单击需要删除的索引,然后选择删除
  2. 单击页面右下方的保存按钮。
  3. 执行修改窗口,确认 SQL 语句无误,然后单击执行

重命名索引

如需重命名关系表的索引,遵循以下步骤。

  1. 右键单击需要重命名的索引,然后选择重命名

  2. 重命名窗口,编辑索引名称,然后单击确定

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

生成 SQL 语句

如需为关系表的索引生成 SQL 语句,遵循以下步骤。

  1. 右键单击指定外键,选择选择生成 SQL > DDL

  2. 生成 SQL 语句窗口,选择是否使用标准名称紧凑型 SQL,然后单击复制关闭

    默认情况下,使用标准名称,不使用紧凑型 SQL。

权限

权限管理用于赋予不同用户指定表的各项权限。

赋予权限

如需为用户赋予权限,遵循以下步骤。

  1. 在指定表的对象窗口,单击权限页签,打开指定表的权限页面。

  2. 选择需要授权的用户,勾选相应的权限。

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误后,单击执行

撤销权限

如需撤销用户的权限,遵循以下步骤。

  1. 在指定表的对象窗口,单击权限页签,打开指定表的权限页面。

  2. 选择需要撤销授权的用户,取消勾选相应的权限。

  3. 单击页面右下方的保存按钮。

  4. 执行修改窗口,确认 SQL 语句无误,然后单击执行

查看 DDL 语句

在指定表的对象窗口,单击 DDL 页签,即可查看相关 DDL 语句。