DDL语法一览表
DDL(Data Definition Language数据定义语言),用于定义或修改数据库中的对象。如:表、索引、视图等。
GaussDB不支持数据库主节点不完整时进行DDL操作。例如:数据库中有1个数据库主节点故障时执行新建数据库、表等操作都会失败。
定义客户端加密主密钥
客户端加密主密钥主要用于密态数据库特性,用来加密列加密密钥(cek)。客户端加密主密钥定义主要包括创建客户端加密主密钥以及删除客户端加密主密钥。所涉及的SQL语句,请参考表1。
定义列加密密钥
列加密密钥主要用于密态数据库特性中,用来加密数据。列加密密钥定义主要包括创建列加密密钥、轮转加密列加密密钥的客户端主密钥以及删除列加密密钥。所涉及的SQL语句,请参考表1。
功能 |
相关SQL |
---|---|
创建列加密密钥 |
|
修改列加密密钥指定的客户端主密钥 |
|
删除列加密密钥 |
定义数据库
数据库是组织、存储和管理数据的仓库,而数据库定义主要包括:创建数据库、修改数据库属性,以及删除数据库。所涉及的SQL语句,请参考表3。
定义模式
模式是一组数据库对象的集合,主要用于控制对数据库对象的访问。所涉及的SQL语句,请参考表4。
定义表空间
表空间用于管理数据对象,与磁盘上的一个目录对应。所涉及的SQL语句,请参考表5。
定义表
表是数据库中的一种特殊数据结构,用于存储数据对象以及对象之间的关系。所涉及的SQL语句,请参考表6。
定义分区表
分区表是一种逻辑表,数据是由普通表存储的,主要用于提升查询性能。所涉及的SQL语句,请参考表7。
定义索引
索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。所涉及的SQL语句,请参考表8。
定义存储过程
存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数(如果该存储过程带有参数)来执行它。所涉及的SQL语句,请参考表9。
定义函数
在GaussDB中,它和存储过程类似,也是一组SQL语句集,使用上没有差别。所涉及的SQL语句,请参考表10。
定义包
包由包头(package specification)和包体(package body)组成,用来分类管理存储过程和函数,类似于Java、C++等语言中的类。
功能 |
相关SQL |
---|---|
创建包 |
|
删除包 |
|
修改包属性 |
定义游标
为了处理SQL语句,存储过程进程分配一段内存区域来保存上下文联系。游标是指向上下文区域的句柄或指针。借助游标,存储过程可以控制上下文区域的变化,请参考表13。
定义聚合函数
功能 |
相关SQL |
---|---|
创建一个新的聚合函数 |
|
修改聚合函数 |
|
删除聚合函数 |
定义数据类型转换
功能 |
相关SQL |
---|---|
创建一个新的用户自定义数据类型转换 |
|
删除用户自定义数据类型转换 |
定义插件扩展
扩展功能为内部使用功能,不建议用户使用。
功能 |
相关SQL |
---|---|
创建一个新的插件扩展 |
|
修改插件扩展 |
|
删除插件扩展 |
定义操作符
功能 |
相关SQL |
---|---|
创建一个新的操作符 |
|
修改操作符 |
|
删除操作符 |
定义数据类型
功能 |
相关SQL |
---|---|
创建一个新的数据类型 |
|
修改数据类型 |
|
删除数据类型 |
定义定时任务
功能 |
相关SQL |
---|---|
创建一个新的定时任务 |
|
修改定时任务 |
|
删除定时任务 |
定义DATABASE LINK对象
DATABASE LINK是可以操作远程数据库对象,所涉及的SQL语句,请参考表20。
定义外部数据封装器
功能 |
相关SQL |
---|---|
创建外部数据封装器 |
|
修改外部数据封装器 |
|
删除外部数据封装器 |