数据库的管理包含对数据库的列表创建、修改、删除、查询等操作,并能够以数据库列表的形式展示数据库的数据库名、编码、所有者和操作等基本信息。
单击数据库管理=>数据库对象=>数据库,可以看到数据库列表,包含数据库名、编码、所有者和操作等信息。
表?8.1.?数据库解析表
项目 | 解析 |
---|---|
数据库名 | 字母、下划线开头,包含数字,长度不超过64位。 |
编码 | 默认为UTF8编码,也可以根据实际情况选择其他编码。 |
所有者 | 默认是创建数据库的用户,也可以切换成其他的数据库用户。 |
操作 | 修改:对选定的数据库进行所有者的修改;新建:在当前连接的实例中创建新的数据库;删除:对选定的数据库进行删除;查询:通过数据库名进行数据库信息的过滤;执行:1、Analysis:垃圾收集和分析当前所连接数据库。2、Clean-up:选择清理当前连接的数据库,以获得更多的空间。3、RebuildIndex:重建当前连接的数据库里的所有索引。4、Rename:重新更改选中的某个数据库的名称。5、Privilege:对某个选中的数据库进行权限的管理。 |
单击数据库列表左上角“新建”,可以进行数据库创建。
选中uxdb数据库名,单击数据库列表左上方“删除”,可以进行删除操作。
数据库列表左上方可以进行“操作类型”选择,例如选择“RebuildIndex”来重建索引,并单击“执行”。
表?8.2.?数据库操作类型解析表
项目 | 解析 |
---|---|
Analysis | 由于数据库表中更新或加载了大量数据,通过运行analyze,可以保证规划器中所有表数据的最新统计(针对当前连接数据库)。 |
Clean-up | 恢复那些已更新或已删除的行占据的磁盘空间(针对当前连接数据库)。参数:FULL、FREEZE、FULL FREEZE |
RebuildIndex | 通过使用存储在索引表中的数据重建索引,替换旧的索引副本(针对当前连接数据库)。 |
Rename | 用来重命名选中的数据库。 |
Privilege | 对某个选中的数据库进行权限的管理。 |
选择“Analysis”操作选项,单击“执行”。
将会提示该操作只对当前连接的数据库有效,单击“是”,即可完成对当前连接的数据库进行Analysis操作。
选择“Clean-up”操作选项,单击“执行”。
将会提示该操作只对当前连接的数据库有效,单击“是”,即可完成对当前连接的数据库进行Clean-up操作。
选择“RebuildIndex”操作选项,单击“执行”。
将会提示该操作只对当前连接的数据库有效,单击“是”,即可完成对当前连接的数据库进行RebuildIndex操作。
选中需要修改的项,例如test_db数据库,选择“Rename”操作选项。
单击“执行”,出现修改数据库名称的弹框,依照弹框中提示的数据格式,补充数据库名称。
单击“确定”,即可完成Rename操作。
选中某个数据库可以对其进行数据库权限的添加、删除、是否转授权等操作。
添加、删除或者操作转授权之后,需要单击“确定”,方可完成权限管理的操作。添加权限管理:
表?8.3.?添加权限解析表
项目 | 解析 |
---|---|
权限 | 表示可以操作数据库的权限,含create、connect、temporary、all |
授权者 | 一般指当前连接操作数据库的用户 |
被授权者 | 将上述权限可以赋给其它用户,因此在添加权限时,需要选择要被授权的角色 |
转授权 | 指定是否可以将当前该被授权者的权限是否可以有权转授给其他角色 |
级联删除权限 | 对于删除权限的操作,是否需要级联删除的操作 |
单击数据库名为student中操作,可以进行所有者的修改。
例如在数据库列表右上角的数据库名中输入“uxdb1”,并单击查询,可以进行数据库查询操作。
模式的管理包含对模式的列表、新建、删除、查询、执行等操作,并能够以模式列表的形式展示模式的模式名、所有者、表数目、视图数目等基本信息。
单击数据库管理=>数据库对象=>模式,可以看到模式列表,包含模式名、所有者、表数目、视图数目、存储过程数目、序列数目信息。
表?8.4.?模式列表解析
项目 | 解析 |
---|---|
模式名 | 字母、下划线开头,包含数字,长度不超过64位 |
数据库 | 该模式所属的数据库 |
所有者 | 默认是创建数据库的用户,也可以切换成其他的数据库用户 |
表数目 | 该模式下,存在表的数目 |
视图数目 | 该模式下,存在视图的数目 |
存储过程数目 | 该模式下,存在存储过程的数目 |
序列数目 | 该模式下,存在序列的数目 |
操作 | 新建:在当前连接的实例中创建新的模式;删除:对选定的模式进行删除;查询:通过模式名、所有者进行模式信息的过滤;执行:1、Rename:重新更改选中的某个模式的名称。2、Privilege:对某个选中的模式进行权限的管理。 |
单击模式列表界面左上角“新建”,可以进行模式创建。
选中模式名为“sln_schema_one”,单击模式列表左上方“删除”,可以进行删除操作。
表?8.5.?模式删除解析表
项目 | 解析 |
---|---|
RESTRICT | 如果字段或者约束还有任喊拿庞蜗菲教ㄗ⒉嵬纠赖的对象,则拒绝删除该模式 |
CASCADE | 级联删除依赖于被依赖的字段或者约束的对象 |
例如在模式列表右上角的模式名中输入“MPP”、所有者中输入“uxdb”并单击查询,可以进行模式查询操作。
表的管理包含对表的列表、新建、删除、查看、查询、执行等操作,并能够以表列表的形式展示表的表名称、表类型、表空间名、数据库名、模式名、近似行数、所有者、存储类型、操作等基本信息。
单击数据库管理=>数据库对象=>表,可以看到表列表。
表?8.7.?表列表解析表
项目 | 解析 |
---|---|
表名称 | 字母、下划线开头,包含数字,长度不超过64位 |
表类型 | 用户表、系统表 |
表空间名 | 该表所属表空间信息 |
数据库名 | 该表所属的数据库信息 |
模式名 | 该表所属的模式信息 |
近似行数 | 该表所含有的近似行数 |
所有者 | 该表所属的所有者 |
存储类型 | 表示该表的存储方式,行存储或者列存储 |
启用行级安全性 | 启用Bypass RLS权限管理 |
操作 | 新建:在当前连接的实例中创建新的表;删除:对选定的表进行删除;查看:查看选中表的数据的详细信息;查询:通过模式名、表名进行表信息的过滤;执行:1、Analysis:分析指定的表。2、Clean-up:清空该数据库中的选中的表。3、ChangeSpace:更改的表空间为一个指定的表空间,并将与这个表相关的数据文件移至新的表空间。4、RebuildIndex:重新建立指定表的所有索引。5、Rename:重新更改选中的某个表的名称。6、Privilege:对某个选中的表进行权限的管理。7、RLS Manage:增加行及安全策略设置。 |
单击表列表界面左上角“新建”,可以进行表创建。
表?8.8.?表新建基本信息解析表
项目 | 解析 |
---|---|
数据库名 | 显示当前所新建的表,所属的数据库 |
模式名 | 选择当前新建的表,所属的模式,默认是public |
表名称 | 字母、下划线开头,包含数字,长度不超过64位 |
表空间 | 选择表所属的表空间 |
主键索引表空间 | 如果该表有主键,则选择主键索引的表空间 |
描述 | 对于该表的描述语句 |
是否为列存 | 选择是,则创建列存表;否,则创建普通表 |
blocksize | 设置表中每个块的大小 |
compresstype | 压缩类型:1、compresstype=zlib(默认值)提供低压速度下的高压缩比。2、compresstype=RLE_TYPE 仅在指定orientation=column时有效。3、compresstype=null表示禁用压缩。 |
compresslevel | 压缩等级的取值范围 |
checksum | True表示为追加优化表启动CRC校验和验证;false则表示禁止校验验证 |
表?8.9.?列新建解析表
项目 | 解析 |
---|---|
不可空 | 表示该列的数据是否可以为空 |
主键 | 表示该列是否可以作为主键存在,如果选中为主键,则该列必须是不为空。如若选择主键,则默认会创建主键约束在约束条件列表中可查看,详情请参考第?8.2.3.2.3.1?节中的主键约束说明。 |
默认值为系统函数 | 当选中该项,表示将默认值当系统函数处理;若未选中该项,表示将默认值当做字符串处理 |
列名 | 字母、下划线开头,包含数字,长度不超过64位 |
数据类型 | 为该列设置存储数据的数据类型 |
默认值 | 给予默认值,字符串形式 |
长度 | 如果数据类型为“integer”,则不需要设置其长度 |
精度 | 数值的位数,包括整数和小数(针对整型) |
标度 | 小数的位数(针对整型) |
种子 | 该列上序列的起始值 |
步长 | 该列上序列的间隔 |
描述 | 对于列的相关描述语句 |
某行的列信息,单击,可以修改选中列的信息。
选择需要删除的列,单击“删除”,并且单击“确定”,即可完成删除列的操作。
新建或者编辑可操作的约束类型支持:Check约束、排他约束、外键约束、主键约束、唯一约束,如果创建列时,设置了主键,则修改或者查看表时可以在约束列表中可以查看所设置的主键约束,并且支持对主键约束的删除操作。
表?8.10.?新建Check约束解析表
项目 | 解析 |
---|---|
约束类型 | 增加Check约束时,则为Check约束 |
约束名 | 选填写约束名,如果不填写,则系统自动生成约束名 |
约束表达式 | 必须填写约束表达式 |
表?8.11.?新建外键约束解析表
项目 | 解析 |
---|---|
约束类型 | 该约束为外键约束 |
约束名 | 选填写约束名,如果不填写,则系统自动生成约束名 |
模式名 | 需要选择主键所在的模式信息 |
表名 | 需要选择主键所在的表信息 |
列名 | 需要选择主键的列信息 |
主键列 | 显示上栏选择的主键列信息 |
外键列名 | 选择外键列信息 |
外键列 | 显示上栏所选择的外键列信息 |
删除方式 | 可选值:1、no action:生成一个错误,表名删除将产生一个违反外键约束的动作。如可推迟,该错误将在检查约束的时候产生。2、Restrict:生成一个表名删除,该动作不可推迟。3、Cascade:删除任喊拿庞蜗菲教ㄗ⒉嵬君用了被删除的行。4、set null:将引用行设置为NULL。5、set default:将引用字段设置为缺省值。 |
更新方式 | 可选值:1、no action:更新将产生一个违反外键约束的动作。如可推迟,该错误将在检查约束的时候产生。2、Restrict:更新将导致违反外键约束的错误,该动作不可推迟。3、Cascade:分别把引用行的字段值更新为被参考字段的新数。4、set null:将引用行设置为NULL。5、set default:将引用字段设置为缺省值。 |
延迟生效 | 选择约束是否可推迟。不选择允许推迟,则在每条命令之后马上检查;选择允许推迟,则可以设置子句检查约束的缺省时 |
检查时间 | 如果约束是可推迟的,则声明检查约束的缺省时间。默认为不选择表示在每条命令之后马上检查;选择表示可以推迟到事务结尾,再检查 |
表?8.12.?新建唯一约束解析表
项目 | 解析 |
---|---|
约束类型 | 该约束类型为唯一约束 |
约束名 | 选填写约束名,如果不填写,则系统自动生成约束名 |
表空间 | 选择唯一约束的表空间信息 |
约束列选择 | 建立唯一约束需要至少选择一列 |
表?8.13.?新建排他约束解析表
项目 | 解析 |
---|---|
约束类型 | 该约束类型为排他约束 |
约束名称 | 必须填写约束名称 |
表空间 | 约束的表空间选择 |
访问方式 | 索引类型支持:brin、btree、gin、gist、hash、spgist |
填充因子 | 是一个索引实际数据的百分比,决定了索引方法的占用页的空间的比率。可选择10-100之间的数值 |
Where条件 | Where字句表达式,即创建一个部分索引。可以使用底层表的列,或者它所有的列。目前该表达式查询时禁止出现where字句 |
延迟生效 | 选择约束是否可推迟。不选择允许推迟,则在每条命令之后马上检查;选择允许推迟,则可以设置子句检查约束的缺省时间 |
检查时间 | 如果约束是可推迟的,则声明检查约束的缺省时间。默认为不选择表示在每条命令之后马上检查;选择表示可以推迟到事务结尾,再检查 |
描述 | 排他约束中的索引描述 |
列选择 | 添加:根据列显示,添加该列。删除:删除选中的列数据。如果访问方式为“btree”,则需要选择操作符类,其余访问方式则不需要 |
列选择举例:
desc_text列的数据类型为text类型,需要选择操作符类为text_pattern_ops,操作符选中“=”。
当创建列时,选择主键,那么也就会存在一个主键约束。因此在约束条件列表页面就会看到主键约束信息。
选中需要删除的约束条件。单击“删除”,并且单击“确定”。即可以完成删除操作。
表的约束修改(以唯一约束为例):
表修改和表新建的界面以及字段含义相同,在此不再进行说明,详细请参考第?8.2.3.2?节。
通过该功能,查看选中表中所存储的表数据。单击“查看”,可以筛选该表内的数据。
单击“iiii”,可以对数据项进行过滤,例如下图去掉“is_verified_by、comments”这两项数据查看。
单击“筛选条件”,出现筛选条件弹框。可根据查询条件对数据进行过滤。
填写过滤条件,单击“添加”,将已补充的关系作为筛选条加载至后侧的表格中。
单击“确定”,表数据会根据添加的过滤条件重新加载表数据。如果添加条件被清空,则默认查询所有当前表数据。
选中列表的某行表信息,单击“删除”,可以删除选中的表。
表执行中有Analysis、Clean-up、ChangeSpace、RebuildIndex、Rename、RLS Manage和Privilege等操作。以上的操作已在上述内容中说明,此处着重说明privilege(权限管理)。
选中某一行数据,选择“Analysis”操作选项,单击“执行”,即可完成对选中数据库对象进行的Analysis操作。这里以下图所示的表对象为例。
选中某一行数据,选择“Clean-up”操作选项。
单击“执行”,出现Clean-up弹框,选择清理类型,即可完成对选中数据库对象进行的Clean-up操作。这里以上图所示的表对象为例。
选中某行数据,选择“ChangeSpace”操作选项。
单击“执行”,出现ChangeSpace修改弹出框,选择需要修改的表空间。即可完成对数据库对象的ChangeSpace操作。这里以上图选择的表对象为例。
单击“确定”即可完成对选中的数据库对象的表空间的修改。
选中某行数据,选择“RebuildIndex”操作选项。单击“执行”,即可以完成对选中的数据库对象进行RebuildIndex操作。这里以下图选择的表对象为例。
操作步骤请参考Rename。
选中某行数据,选择“RLS Manage”操作选项。
单击“执行”,则进行级安全策略的设置。
单击“新建”,可以对行级安全策略的创建。
表?8.14.?行级安全策略创建解析表
项目 | 解析 |
---|---|
策略名 | 行级安装策略名称 |
模式名 | 策略适用表的模式 |
表名 | 策略适用的表的名称 |
权限 | 策略适用的命令,有效选项:ALL(默认值)、SELECT、INSERT、UPDATE、DELETE |
用户 | 要应用策略的角色。默认值是public,将策略应用于所有角色 |
Using表达式 | 任何sql条件表达式,其中表达式不包含任何聚合或者窗口函数。如果启用行级别安全性,则此表达式将添加到引用该表的查询中。返回值为true的行,将可见。表达式返回false或者null的任何行都不会对用户可见,且不可被修改。但不会报告错误。 |
Withcheck表达式 | 任何sql条件表达式,其中表达式不包含任何聚合或者窗口函数。该表达式将用于使用INSERT、UODATE查询,如果行级安全启用对表,只允许表达式求值为true的行,如果表达式的计算结果为false,则对于插入的任何记录或者更新产生的任何记录,都将会引发错误。 |
单击需要修改行级安全策略操作栏,可以对已经创建的行级安全策略进行修改。
选中某个行级安全策略,选择“Rename”操作选项。
单击“执行”,可以对已经创建的行级安全策略进行名称修改。
依照提示,正确填写策略名称,单击“确定”,即可完成该操作。
选中某行行级安全策略,单击“删除”,即可以完成对选中的行级安全策略删除的操作。
单击“添加”,可对当前选择的数据库对象增加对象权限。
选择需要删除的对象权限,单击“删除”,即可以对选中的对象权限删除。
操作上述步骤完成后,需要单击“确定”,可完成对选中数据库对象的对象权限的操作。当删除对象权限时,可以选择是否级联删除,如果选择级联删除,则表示所有依赖都会被删除。
单击“列级权限”,可以对选中的数据库对象进行列级权限的操作。
单击“添加”,可对当前选择的数据库对象增加列级权限。
选择需要删除的对象权限,单击“删除”,即可以对选中的列级权限删除。
操作上述步骤完成后,需要单击“确定”,可完成对选中数据库对象的对象权限的操作。
表详情可以查看表的一些信息,界面以及字段含义和表新建类似,在此不再进行说明,详情请参考第?8.2.3.2?节。
表列表可以通过模式名、表名称对表列表进行过滤。
索引的管理包含索引的列表、新建、删除、查询、执行等操作,并能够以索引列表的形式展示表的索引名、表名、模式、索引表空间、索引类型、对应类、描述、操作等基本信息。
单击数据库管理=>数据库对象=>索引,可以看到索引列表。
表?8.15.?索引列表解析表
项目 | 解析 |
---|---|
索引名 | 字母、下划线开头,包含数字,长度不超过64位 |
表名 | 索引所属表名 |
模式 | 索引所属模式 |
索引表空间 | 索引的表空间 |
索引类型 | 索引类型,常规索引、全文索引 |
对应列 | 索引对应的列 |
描述 | 描述该索引 |
操作 | 新建:新建索引;删除:对选定的索引进行删除;查询:通过模式名、表名、索引名进行索引列表信息的过滤;执行:1、RebuildIndex:重新建立指定索引的所有索引。2、Rename:重新更改选中的某个索引的名称。 |
表?8.16.?索引新建一解析表
项目 | 解析 |
---|---|
模式名 | 索引新建选择模式名 |
表名 | 依照上述的模式名,选择索引所属的表名 |
表?8.17.?索引新建二解析表
项目 | 解析 |
---|---|
索引名 | 创建索引的索引名称 |
索引空间 | 表示创建索引的表空间 |
索引类型 | 表示可支持创建的索引类型(btree/hash/gin/gist/suxgist/brin) |
唯一索引 | 索引还可以用于强迫字段数值的唯一性,或者是多个字段组合值的唯一性(btree) |
聚集索引 | 数据库表行中数据的物理顺序与键值的逻辑(索引)顺序相同(btree/gist) |
函数索引 | 基于函数的索引(btree/hash/gin/gist/suxgist/brin) |
函数表达式 | 选择函数索引,需要填写函数表达式 |
描述 | 对索引进行相关注释说明 |
表?8.18.?索引新建三解析表
项目 | 解析 |
---|---|
列次序 | 添加该索引列的次序 |
对于选中的索引,单击“删除”可以删除该索引。
列表通过模式、表名、索引名进行索引列表数据过滤。
索引修改操作与索引新建的操作以及字段含义相同,详情请参考第?8.2.4.2?节。
查看索引的全部信息,鼠标悬浮某一行索引,可见到左侧有三角显示,单击左侧的三角,则可以查看信息。
索引执行两个执行项,分别是:RebuildIndex、Rename操作方法类似上述操作。
操作步骤请参考RebuildIndex。
操作步骤请参考Rename。
视图的管理包含对视图的列表、删除、查看、查询、执行等操作,并能够以视图列表的形式展示视图的视图名称、视图类型、所有者、模式名、是否可更新、是否检查等基本信息。
单击数据库管理=>数据库对象=>视图,可以看到视图列表。
表?8.19.?视图列表解析表
项目 | 解析 |
---|---|
视图名称 | 视图名称 |
视图类型 | 根据视图的模式,进行区分用户视图和系统视图 |
所有者 | 创建视图的所有者 |
模式名 | 视图的模式名 |
是否可更新 | 如果视图是可以更新的则为对勾显示(允许update、delete) |
是否检查 | 若使用该限制,则对视图增加或者修改数据时必须满足子查询的条件 |
操作 | 查看:查看视图的数据信息;删除:对选定的视图进行删除;查询:通过模式名、视图名进行视图列表信息的过滤;执行:1、Privilege:对视图进行权限管理。2、ModifyOwner:修改选中视图的所有者。3、Rename:重新更改选中的某个视图的名称。 |
对于选中的视图,单击“删除”可以实现删除选中的视图。
实现视图执行可选择项的操作。
视图可以通过模式名以及视图名过滤视图列表信息。
扩展的管理包含对扩展的列表、添加、删除、查询操作,并能够以扩展列表的形式展示扩展的扩展名称、OID、所有者、依赖扩展、可再定位、版本、注释等基本信息。
单击数据库管理=>数据库对象=>扩展,可以看到扩展列表。
表?8.20.?扩展列表解析表
项目 | 解析 |
---|---|
扩展名 | 选择需要安装的扩展名称 |
OID | 行标识符 |
所有者 | 扩展的所有者 |
依赖扩展 | 当前扩展,依赖的先决条件的扩展名 |
可再定位 | 可再定位指扩展可以重新加载到另外一个模式中,反之,则不可以 |
版本 | 扩展的版本 |
注释 | 扩展的控制文件中的评论字符串 |
单击“添加”,可以增加新的扩展。添加的扩展必须是已安装的扩展。
表?8.21.?扩展添加解析表
项目 | 解析 |
---|---|
扩展名 | 选择已经安装的某个扩展名,进行添加 |
模式名 | 扩展的模式 |
通过扩展名、选择所有者可以过滤扩展列表的信息。
表空间允许管理员在文件系统中定义那些代表数据对象的文件存放位置。
表空间的管理包含对表空间的列表、新建、删除、查询、执行等操作,并能够以表空间列表的形式展示表空间的表空间名、数据库名、加密、所有者、表空间目录等基本信息。
单击数据库管理=>数据库对象=>表空间,可以看到表空间列表。
表?8.22.?表空间列表解析表
项目 | 解析 |
---|---|
表空间名 | 表空间名 |
数据库名 | 显示当前连接数据库 |
所有者 | 表空间的所有者,一般为创建表空间的人 |
操作 | 新建:新建表空间;删除:删除表空间;查询:查找表空间;执行:1、Privilege:对选中表空间进行权限管理。2、Rename:对选中表空间进行重命名。3、ModifyObjectOwner:对选中表空间修改所有者。 |
注册一个集群范围内的新表空间,表空间名称必须在该数据库集群中的任何现有表空间中唯一。单击“新建”,可以新建一个表空间。
表?8.23.?表空间新建解析表
项目 | 解析 |
---|---|
表空间名 | 表空间名 |
文件名 | 创建表空间使用的文件名 |
所有者 | 将拥有这个表空间的用户名 |
数据文件路径 | 创建表空间的文件夹所在的路径 |
从系统中删除一个表空间,有可能会因为存在临时文件而删除失败。选择一个表空间,单击“删除”,实现表空间删除。
表空间执行的操作如下图所示。
操作步骤请参考Privilege。
操作步骤请参考Rename。
操作步骤请参考ModifyOwner。
表空间列表可以通过表空间名进行列表数据过滤。
序列的管理包含序列的列表、新建、删除、修改、查询、执行等操作,并能够以序列列表的形式展示序列名、数据库名、类型、初始值、最小值、最大值、间隔、缓冲区可配置个数、是否循环、描述等基本信息。
单击数据库管理=>数据库对象=>序列,可以看到序列列表。
创建一个新的序列发生器。单击“新建”,可以创建新的序列。
表?8.24.?序列新建解析表
项目 | 解析 |
---|---|
序列名 | 序列名称 |
数据库 | 选择序列存在的数据库 |
模式 | 选择序列将建的模式 |
缓冲区匹配数 | 快速访问在内存中预先存储多少个序列号,最小值为1 |
初始值 | 序列的起点 |
最小值 | 指定序列的最小值 |
最大值 | 指定序列的最大值 |
间隔 | 指定序列的步长,正数为递增,负数为递减 |
类型 | 升序或者降序 |
是否循环 | 循环则使序列到达maxvalue/minvalue时,可以循环并继续;不循环则其到达最大值之后,任何对nextval的调用会返回错误 |
描述 | 对该序列进行相关注释说明 |
操作 | 新建:新建序列;删除:删除序列;查询:查询序列;修改:修改序列;执行:1、Privilege:序列权限管理 |
从数据库中删除一个序列,只有其所有者或者超级用户才能将其删除。选择一个序列,单击“删除”,实现序列删除。
序列列表通过模式名和序列名可以进行序列列表数据过滤。
单击某行序列的,可以对选择的序列进行信息的修改。