【达梦8】sql语句学习笔记


👇👇👇👇公众号内 无障碍无限制 阅读👇👇👇👇

发送关键字获取内容: 数据库

在这里插入图片描述

👆👆👆👆公众号内无障碍无限制阅读👆👆👆👆👆👆




目录

达梦角色说明

角色名称 角色简单说明
DBA DM 数据库系统中对象与数据操作的最高权限集合,拥有构建数据库的全部特权,只有 DBA 才可以创建数据库结构
RESOURCE 可以创建数据库对象,对有权限的数据库对象进行数据操纵,不可以创建数据库结构
PUBLIC 不可以创建数据库对象,只能对有权限的数据库对象进行数据操纵
VTI 具有系统动态视图的查询权限,VTI 默认授权给 DBA 且可转授
SOI 具有系统表的查询权限
SVI 具有基础 V 视图的查询权限
DB_AUDIT_ADMIN 数据库审计的最高权限集合,可以对数据库进行各种审计操作,并创建新的审计用户
DB_AUDIT_OPER 可以对数据库进行各种审计操作,但不能创建新的审计用户
DB_AUDIT_PUBLIC 不能进行审计设置,但可以查询审计相关字典表
DB_AUDIT_VTI 具有系统动态视图的查询权限,DB_AUDIT_VTI 默认授权给DB_AUDIT_ADMIN
DB_AUDIT_SOI 具有系统表的查询权限
DB_AUDIT_SVI 具有基础 V 视图和审计 V 视图的查询权
DB_POLICY_ADMIN 数据库强制访问控制的最高权限集合,可以对数据库进行强制访问控制管理,并创建新的安全管理用户
DB_POLICY_OPER 可以对数据库进行强制访问控制管理,但不能创建新的安全管理用户
DB_POLICY_PUBLIC 不能进行强制访问控制管理,但可以查询强制访问控制相关字典表
DB_POLICY_VTI 具 有 系 统 动 态 视 图 的 查 询 权 限 , DB_POLICY_VTI 默 认 授 权 给DB_POLICY_ADMIN 且可转授
DB_POLICY_SOI 具有系统表的查询权限
DB_POLICY_SVI 具有基础 V 视图和安全 V 视图的查询权限
DB_OBJECT_ADMIN 可以在自己的模式下创建各种数据库对象并进行数据操纵,也可以创建和删除非模式对象
DB_OBJECT_OPER 可以在自己的模式下创建数据库对象并进行数据操纵
DB_OBJECT_PUBLIC 不可以创建数据库对象,只能对有权限的数据库对象进行数据操纵
DB_OBJECT_VTI 具 有 系 统 动 态 视 图 的 查 询 权 限 , DB_OBJECT_VTI 默 认 授 权 给DB_OBJECT_ADMIN 且可转授
DB_OBJECT_SOI 具有系统表的查询权限
DB_OBJECT_SVI 和 SVI 权限一样

权限说明表

权限 说明
ALTER DATABASE 修改数据库
RESTORE DATABASE 恢复数据库
CREATE USER 创建用户
ALTER USER 修改用户
DROP USER 丢弃用户
CREATE ROLE 创建角色
CREATE SCHEMA 创建模式
CREATE TABLE 创建数据表
CREATE VIEW 创建视图
CREATE PROCEDURE 创建存储过程
CREATE SEQUENCE 创建序列
CREATE TRIGGER 创建触发器
CREATE INDEX 创建索引
CREATE CONTEXT INDEX 创建上下文索引
BACKUP DATABASE 备份数据库
CREATE LINK 创建链接
CREATE REPLICATE 创建副本
CREATE PACKAGE 创建包
CREATE SYNONYM 创建同义词
CREATE PUBLIC SYNONYM 创建公共同义词
ALTER REPLICATE 修改副本
DROP REPLICATE 删除副本
DROP ROLE 丢弃角色
ADMIN ANY ROLE 管理任何角色
ADMIN ANY DATABASE PRIVILEGE 管理任何数据库权限
GRANT ANY OBJECT PRIVILEGE 授予任何对象特权
CREATE ANY SCHEMA 创建任何模式
DROP ANY SCHEMA 丢弃任何模式
CREATE ANY TABLE 创建任何数据表
ALTER ANY TABLE 修改任何数据表
DROP ANY TABLE 丢弃任何数据表
INSERT TABLE 插入数据表
INSERT ANY TABLE 插入任何数据表
UPDATE TABLE 更新数据表
UPDATE ANY TABLE 更新任何数据表
DELETE TABLE 删除数据表
DELETE ANY TABLE 删除任何数据表
SELECT TABLE 查询数据表
SELECT ANY TABLE 查询任何数据表
REFERENCES TABLE 引用表
REFERENCES ANY TABLE 引用任何表
GRANT TABLE 授权数据表
GRANT ANY TABLE 授权任何数据表
CREATE ANY VIEW 创建任何视图
ALTER ANY VIEW 修改任何视图
DROP ANY VIEW 丢弃任何视图
INSERT VIEW 插入视图
INSERT ANY VIEW 插入任何视图
UPDATE VIEW 更新视图
UPDATE ANY VIEW 更新任何视图
DELETE VIEW 删除视图
DELETE ANY VIEW 删除任何视图
SELECT VIEW 查询视图
SELECT ANY VIEW 查询任何视图
GRANT VIEW 授权视图
GRANT ANY VIEW 授权任何视图
CREATE ANY PROCEDURE 创建任何存储过程
DROP ANY PROCEDURE 丢弃任何存储过程
EXECUTE PROCEDURE 执行存储过程
EXECUTE ANY PROCEDURE 执行任何存储过程
GRANT PROCEDURE 授权存储过程
GRANT ANY PROCEDURE 授权任何存储过程
CREATE ANY SEQUENCE 创建任何序列
DROP ANY SEQUENCE 丢弃任何序列
SELECT SEQUENCE 查询序列
SELECT ANY SEQUENCE 查询任何序列
GRANT SEQUENCE 授权序列
GRANT ANY SEQUENCE 授权任何序列
CREATE ANY TRIGGER 创建任何触发器
DROP ANY TRIGGER 丢弃任何触发器
CREATE ANY INDEX 创建任何索引
ALTER ANY INDEX 修改任何索引
DROP ANY INDEX 丢弃任何索引
CREATE ANY CONTEXT INDEX 创建任何上下文索引
ALTER ANY CONTEXT INDEX 修改任何上下文索引
DROP ANY CONTEXT INDEX 丢弃任何上下文索引
CREATE ANY PACKAGE 创建任何包
DROP ANY PACKAGE 丢弃任何包
EXECUTE PACKAGE 执行包
EXECUTE ANY PACKAGE 执行任何包
GRANT PACKAGE 授权包
GRANT ANY PACKAGE 授权任何包
CREATE ANY LINK 创建任何链接
DROP ANY LINK 丢弃任何链接
CREATE ANY SYNONYM 创建任何同义词
DROP ANY SYNONYM 丢弃任何同义词
DROP PUBLIC SYNONYM 丢弃公共同义词
SELECT ANY DICTIONARY 查询任何同义词
ADMIN REPLAY 管理重演
ADMIN BUFFER 管理缓冲区
CREATE TABLESPACE 创建表空间
ALTER TABLESPACE 修改表空间
DROP TABLESPACE 丢弃表空间
ALTER ANY TRIGGER 修改任何触发器
CREATE MATERIALIZED VIEW 创建物化视图
CREATE ANY MATERIALIZED VIEW 创建任何物化视图
DROP ANY MATERIALIZED VIEW 丢弃任何物化视图
ALTER ANY MATERIALIZED VIEW 修改任何物化视图
SELECT MATERIALIZED VIEW 查询物化视图
SELECT ANY MATERIALIZED VIEW 查询任何物化视图
CREATE ANY DOMAIN 创建任何域
DROP ANY DOMAIN 丢弃任何域
CREATE DOMAIN 创建域
GRANT ANY DOMAIN 授权任何域
GRANT DOMAIN 授权域
USAGE ANY DOMAIN 使用任何域
USAGE DOMAIN 使用域
CREATE ANY CONTEXT 创建任何上下文
DROP ANY CONTEXT 丢弃任何上下文
GRANT ANY CONTEXT 授权任何上下文
COMMENT ANY TABLE 注释任何数据表
DUMP ANY TABLE 转储任何数据表
DUMP TABLE 转储数据表
ADMIN JOB 管理任务
CREATE ANY DIRECTORY 创建任何目录
DROP ANY DIRECTORY 丢弃任何目录
ALTER ANY SEQUENCE 修改任何序列
CREATE PROFILE 创建资源限制
ALTER PROFILE 修改资源限制
DROP PROFILE 丢弃资源限制
CREATE PARTITION GROUP 创建分区组
CREATE ANY PARTITION GROUP 创建任何分区组
DROP ANY PARTITION GROUP 丢弃任何分区组
USAGE PARTITION GROUP 使用分区组
USAGE ANY PARTITION GROUP 使用任何分区组

创建角色

/*
ORDINARY: 自定义的角色名称 
*/
create role ORDINARY;

/*
将ORDINARY角色归属于 PUBLIC、RESOURCE、VTI角色下
*/
grant "PUBLIC","RESOURCE","VTI" to ORDINARY;

/*
授予ORDINARY角色权限,详细请查看权限说明表
*/
grant 
CREATE SCHEMA,
CREATE TABLE,
CREATE VIEW,
CREATE PROCEDURE,
CREATE SEQUENCE,
CREATE TRIGGER,
CREATE INDEX,
CREATE CONTEXT INDEX,
BACKUP DATABASE,
CREATE LINK,
CREATE REPLICATE,
CREATE PACKAGE,
CREATE SYNONYM,
CREATE PUBLIC SYNONYM,
ALTER REPLICATE,
INSERT TABLE,
UPDATE TABLE,
DELETE TABLE,
SELECT TABLE,
GRANT TABLE,
INSERT VIEW,
UPDATE VIEW,
DELETE VIEW,
SELECT VIEW,
GRANT VIEW,
SELECT SEQUENCE,
EXECUTE PACKAGE,
GRANT PACKAGE,
CREATE PROFILE,
ALTER PROFILE 
to ORDINARY;

提示:

  1. 安全严格管控的生产系统推荐授予以下角色
"PUBLIC","VTI","SOI"
  1. 若需要放开create权限,则推荐授予以下角色
 "RESOURCE","PUBLIC","VTI","SOI"

创建用户

/*
说明:
MY:自定义的用户名
123456:密码
password_policy 0:密码策略
not_allow_ip:不允许访问的ip
allow_ip :允许访问的ip
allow_datetime :允许访问的时间段
default tablespace MYTABLESPACE :默认使用的表空间
default index tablespace MYTABLESPACE: 默认使用的索引表空间 
*/
create user MY identified by "123456" password_policy 0
-- allow_ip "192.168.0.188"
-- allow_datetime "2023-01-05" "16:12:51" to "2023-01-31" "16:12:51"
default tablespace MYTABLESPACE 
default index tablespace MYTABLESPACE ;

/*
授予用户角色
*/
grant "PUBLIC","SOI","ORDINARY","VTI" to MY;

/*授予用户权限,具体权限参考权限说明*/
grant UPDATE TABLE,SELECT TABLE,GRANT TABLE to MY;

创建模式

/*
说明:
MYSCHEMA  :自定义的模式名称
MY:模式授权给指定的用户
*/
CREATE SCHEMA MYSCHEMA  AUTHORIZATION MY;

创建表空间

/*
说明:
MYTABLESPACE : 自定义的表空间名称
'G:\DM8\install_new\data\MYTABLESPACE\test.DBF' :表空间数据文件地址
128:数据文件大小
autoextend :默认自动扩充
67108863 :数据文件扩充上线值
NORMAL: 普通缓冲区
*/
create tablespace MYTABLESPACE
datafile 'G:\DM8\install_new\data\TEST\test.DBF' 
size 128 
autoextend on 
maxsize 67108863 
CACHE = NORMAL;

创建序列

/*
说明:
MYTABLESPACE.SEQ_MYTABLESPACE: 模式名称.序列名称
INCREMENT BY 1 :自增1
START WITH 1:从1开始
MAXVALUE:最大值
MINVALUE:最小值
NOCACHE:不缓存
NOORDER:非顺序
*/
CREATE SEQUENCE MYSCHEMA.SEQ_MYTABLESPACE
INCREMENT BY 1
START WITH 1
MAXVALUE 9223372036854775807
MINVALUE 1
NOCYCLE
NOCACHE
NOORDER;

创建表

/*
说明:
MYSCHEMA.T_USER: 模式名称.表名
MYTABLESPACE:表空间名
*/
-- 若存在相同名称的表则先删除后再创建
DROP TABLE IF EXISTS MYSCHEMA.T_USER;
CREATE TABLE MYSCHEMA.T_USER
(
id INTEGER NOT NULL,
name VARCHAR2(255),
phone VARCHAR2(50),
idCard VARCHAR2(50),
NOT CLUSTER PRIMARY KEY(id ),
UNIQUE(phone),
UNIQUE(idCard)) STORAGE(ON MYTABLESPACE, CLUSTERBTR) ;

COMMENT ON TABLE MYSCHEMA.T_USER IS '用户表';
COMMENT ON COLUMN MYSCHEMA.T_USER.id IS 'id主键';
COMMENT ON COLUMN MYSCHEMA.T_USER.name IS '姓名';
COMMENT ON COLUMN MYSCHEMA.T_USER.phone IS '手机号';
COMMENT ON COLUMN MYSCHEMA.T_USER.idCard IS '身份证号';

向已有的表添加索引

创建唯一索引

/* 
 说明:
 	unique :索引类型
	MYSCHEMA.uq_name_phone_idcard:模式名.索引名称
	MYSCHEMA.T_USER : 模式名.表名
	name,phone,idCard:分别为表中的字段名称
	initial 1: 初始分配簇大小
	next 1:下次分配簇大小
	minextents:最小保留簇大小
*/
create unique  index MYSCHEMA.uq_name_phone_idcard on MYSCHEMA.T_USER(name,phone,idCard) storage(initial 1,next 1,minextents 1);

例子

给多个字段创建组合索引,并将索引存到指定的索引表空间中

# 格式:create index 索引名称 on 模式名.表名(字段名,...) tablespace 索引表空间名称;
create index idx_code_name_rId_rTable on MYSCHEMA.T_USER (code,name,rid,rtable) tablespace TS_ATTACHMENT_IDX;

创建空间索引

/* 
 说明:
	spatial:索引类型
	MYSCHEMA.uq_name_phone_idcard:模式名.索引名称
	MYSCHEMA.T_USER : 模式名.表名
	name,phone,idCard:分别为表中的字段名称
	initial 1: 初始分配簇大小
	next 1:下次分配簇大小
	minextents:最小保留簇大小
*/
create spatial  index MYSCHEMA.uq_name_phone_idcard on MYSCHEMA.T_USER(name,phone,idCard) storage(initial 1,next 1,minextents 1);

创建数组索引

/* 
 说明:
	array:索引类型
	MYSCHEMA.uq_name_phone_idcard:模式名.索引名称
	MYSCHEMA.T_USER : 模式名.表名
	name,phone,idCard:分别为表中的字段名称
	initial 1: 初始分配簇大小
	next 1:下次分配簇大小
	minextents:最小保留簇大小
*/
create array index MYSCHEMA.uq_name_phone_idcard on MYSCHEMA.T_USER(name,phone,idCard) storage(initial 1,next 1,minextents 1);

向已有的表添加新列

/*
说明:
MYSCHEMA.T_USER : 模式名.表名
sex:新的列名
*/
-- 向 MYSCHEMA.T_USER 表中添加新列sex	
alter table MYSCHEMA.T_USER add column(sex number(1) default (1) not null );
-- 给新列添加备注
comment on column MYSCHEMA.T_USER.sex is '性别 1男 0女';

插入数据到表中

/*
说明:
MYSCHEMA.T_USER : 模式名.表名
MYSCHEMA.SEQ_MYTABLESPACE.NEXTVAL:序列。格式:模式名.序列名.NEXTVAL
*/
insert into MYSCHEMA.T_USER (id,name,phone,idCard) 
values(MYSCHEMA.SEQ_MYTABLESPACE.NEXTVAL,'张三','15578711016','4507211196612266390');

查询

查询当前数据库实例信息

select * from v$instance;

查询数据库集群信息

select * from v$dm_arch_ini;

查询表数据

/*
说明:
MYSCHEMA.T_USER: 模式名.表名
*/
select * from MYSCHEMA.T_USER

查询所有定时任务的信息

SELECT * FROM sysjob.sysjobs;

查询sql执行计划

方式1

以树形的方式展示执行计划

explain select * from MYSCHEMA.T_USER

方式2

以结果集的方式展示执行计划

explain for select * from MYSCHEMA.T_USER

执行计划说明:

  1. CSCN :基础全表扫描,从头到尾,全部扫描
  2. SSCN :二级索引扫描, 从头到尾,全部扫描
  3. SSEK :二级索引范围扫描 ,通过键值精准定位到范围或者单值
  4. CSEK :聚簇索引范围扫描 ,通过键值精准定位到范围或者单值
  5. BLKUP :根据二级索引的ROWID 回原表中取出全部数据(b + a)
  6. SSEK2:二级索引扫描即先扫描索引,再通过主键、聚集索引、ROWID等信息去扫描表;
  7. CSEK2:聚集索引扫描只需要扫描索引,不需要扫描表;
  8. SSCN:索引全扫描,不需要扫描表。

如下图
在这里插入图片描述
执行顺序记住口诀:最右最上先执行。即缩进最多的最先执行,同级缩进的最上最先执行。

查询达梦数据库内存总量

 select
(select sum(n_pages) * page()/1024/1024 from v$bufferpool)||'MB' as 系统缓冲区大小BUFFER_SIZE,
(select sum(total_size)/1024/1024 from v$mem_pool)||'MB' as 共享内存池大小mem_pool,
(select sum(n_pages) * page()/1024/1024 from v$bufferpool)+(select sum(total_size)/1024/1024 from v$mem_pool)||'MB' as 内存总量TOTAL_SIZE
from  dual;

查询sql语句占用内存情况

SELECT "SESSID", MAX_MEM_USED||'KB',SQL_TXT FROM V$SQL_STAT order by MAX_MEM_USED DESC;

查询内存池使用信息

方式一

select  
name as 内存池名称,                      --内存池名称
is_shared as 是否是共享,                   --是否是共享的
is_overflow as 是否用到了备份池,                  --是否用到了备份池
org_size/1024.0/1024.0 || 'M' as 内存池初始大小,        --内存池初始大小
TOTAL_size/1024.0/1024.0 || 'M' as 内存池总大小_包括扩展的,     --内存池总大小(包括扩展的)
RESERVED_SIZE/1024.0/1024.0 || 'M' as 内存池总大_小包括扩展的,  --当前已分配大小(包括扩展的)
DATA_SIZE/1024.0/1024.0 || 'M' as 实际有效字节,      --实际有效字节
EXTEND_SIZE || 'M' as 实际有效字节,                --每次扩展多少
TARGET_SIZE || 'M' as 目标大小,                --目标大小
N_EXTEND_NORMAL as  TARGET范围内累计扩展次数,         --TARGET范围内累计扩展次数
N_EXTEND_EXCLUSIVE  as 超过TARGET累计扩展次数        --超过TARGET累计扩展次数
from  v$mem_pool
order by  TOTAL_size desc;

方式二

select  (
	CASE name 
	WHEN 'memory pool size in bytes' THEN '内存池总的大小' 
	WHEN 'memory used bytes' THEN '内存池使用的内存大小'
	WHEN 'memory used bytes from os' THEN '内存池从操作系统分配的大小'
	END CASE 
	) ,stat_val/1024.0/1024.0 from  v$sysstat where CLASSID=11 ; 

查询会话的内存使用量

SELECT
        A.CREATOR  ,
        B.SQL_TEXT ,
        SUM(A.TOTAL_SIZE)/1024.0/1024.0 || 'M' 当前总量_包括扩展,    --当前总量(包括扩展)
        SUM(A.DATA_SIZE) /1024.0/1024.0 || 'M' 实际使用量  --实际使用量
FROM
        V$MEM_POOL A,
        V$SESSIONS B
WHERE
        A.CREATOR = B.THRD_ID
GROUP BY
        A.CREATOR,
        B.SQL_TEXT
ORDER BY
        当前总量_包括扩展 DESC;

查看表空间使用情况

SELECT
        Upper(F.TABLESPACE_NAME) "表空间名"  ,
        D.TOT_GROOTTE_MB "表空间大小(M)" ,
        D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
        To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), '990.99')|| '%' "使用比"   , 
        F.TOTAL_BYTES "空闲空间(M)",
        F.MAX_BYTES "最大块(M)"
FROM  (
        SELECT
                TABLESPACE_NAME                                   ,
                Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES,
                Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTES
        FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME
      )  F,
      (
        SELECT
                DD.TABLESPACE_NAME,
                Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MB
        FROM SYS.DBA_DATA_FILES DD  GROUP BY  DD.TABLESPACE_NAME
      )  D
WHERE
        D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER BY
        2 desc;

查询指定表中的字段数

语法

select count(*) as 字段总数 from all_tab_columns where table_name='表名称' AND OWNER='模式名称';

例子

select count(*) as 字段总数 from all_tab_columns where table_name='T_USER AND OWNER='MYSCHEMA';

扩展

oracle 的查询表字段数

SELECT COUNT(*) FROM USER_TAB_COLUMNS WHERE TABLE_NAME = '表名称';

达梦DES加密解密

加密

DECLARE
BEGIN
--加密
-- 450111111111016019 明文
-- 1122334455667788 密钥key
select RAWTOHEX(CFALGORITHMSENCRYPT(
utl_i18n.string_to_raw('450111111111016019', 'UTF8'),
129,
utl_i18n.string_to_raw('1122334455667788', 'UTF8')));
END;
/

解密


                
第1章结构化查询语言DM_SQL简介 ................................................................................................. 1 1.1 DM_SQL语言的特点 ................................................................................................................. 1 1.2 保留字与标识符 ........................................................................................................................ 2 1.3 DM_SQL语言的功能及语句 ..................................................................................................... 2 1.4 DM_SQL所支持的数据类型 ..................................................................................................... 3 1.4.1 常规数据类型 .................................................................................................................... 3 1.4.2 日期时间数据类型 ............................................................................................................ 6 1.4.3 多媒体数据类型 ................................................................................................................ 9 1.4.4 数据类型别名 .................................................................................................................... 9 1.5 DM_SQL语言支持的表达式 ..................................................................................................... 9 1.5.1 数值表达式 ...................................................................................................................... 10 1.5.2 字符串表达式 .................................................................................................................. 11 1.5.3 时间值表达式 .................................................................................................................. 12 1.5.4 时间间隔值表达式 .......................................................................................................... 13 1.5.5 运算符的优先级 .............................................................................................................. 14 1.6 DM_SQL语言支持的数据库模式 ........................................................................................... 15 第2章本手册中的实例说明 ............................................................................................................... 16 2.1 实例库说明 .............................................................................................................................. 16 2.2 参考脚本 ................................................................................................................................. 24 第3章数据定义语句 ........................................................................................................................... 42 3.1 数据库定义语句 ...................................................................................................................... 42 3.2 数据库修改语句 ...................................................................................................................... 44 3.3 数据库删除语句 ...................................................................................................................... 46 3.4 设置当前数据库语句 .............................................................................................................. 46 3.5 登录定义语句 .......................................................................................................................... 47 3.6 登录修改语句 .......................................................................................................................... 51 3.7 登录删除语句 .......................................................................................................................... 53 3.8 用户定义语句 .......................................................................................................................... 53 3.9 用户修改语句 .......................................................................................................................... 54 3.10 用户删除语句 ........................................................................................................................ 54 3.11 模式定义语句 ........................................................................................................................ 55 3.12 设置当前模式语句 ................................................................................................................ 56 3.13 模式删除语句 ........................................................................................................................ 57 3.14 基表定义语句 ........................................................................................................................ 57 3.15 基表修改语句 ........................................................................................................................ 68 3.16 基表删除语句 ..................................................................................................................... 74 3.17 全表删除语句 ........................................................................................................................ 75 3.18 索引定义语句 ........................................................................................................................ 76 3.19 索引删除语句 ........................................................................................................................ 78 3.20 序列定义语句 ........................................................................................................................ 79 3.21 序列删除语句 ........................................................................................................................ 80 3.22 全文索引定义语句 ................................................................................................................ 81 3.23 全文索引修改语句 ................................................................................................................ 81 3.24 全文索引删除语句 ................................................................................................................ 82 II 3.25 数据库快照定义语句 ............................................................................................................ 83 3.26 数据库快照删除语句 ............................................................................................................ 84 第4章数据查询语句和全文检索语句 ............................................................................................... 85 4.1 单表查询 ................................................................................................................................. 91 4.1.1 简单查询 .......................................................................................................................... 91 4.1.2 带条件查询 ...................................................................................................................... 92 4.1.3 集函数 .............................................................................................................................. 94 4.1.4 情况表达式 ...................................................................................................................... 96 4.2 连接查询 ................................................................................................................................. 98 4.3 子查询 ................................................................................................................................... 105 4.3.1 标量子查询 .................................................................................................................... 106 4.3.2 表子查询 ........................................................................................................................ 107 4.3.3 派生表子查询 ................................................................................................................ 109 4.3.4 定量比较 ........................................................................................................................ 110 4.3.5 带EXISTS谓词的子查询 ............................................................................................... 111 4.3.6 多列表子查询 ................................................................................................................ 112 4.4 查询结果的合并 .....................................................................................................................113 4.5 GROUP BY和HAVING子句 ...................................................................................................114 4.5.1 GROUP BY子句的使用 ................................................................................................. 114 4.5.2 HAVING子句的使用 ...................................................................................................... 115 4.6 ORDER BY子句 ......................................................................................................................116 4.7 选取前几条数据 .....................................................................................................................117 4.8 选取其中几条数据 .................................................................................................................117 4.9 全文检索 ................................................................................................................................118 4.10 层次查询 .............................................................................................................................. 120 4.10.1 层次查询子句 .............................................................................................................. 120 4.10.2 层次查询相关伪列 ...................................................................................................... 121 4.10.3 层次查询相关操作符 .................................................................................................. 121 4.10.4 层次查询相关函数 ...................................................................................................... 121 4.11 查看执行计划 ...................................................................................................................... 125 第5章数据的插入、删除和修改 ..................................................................................................... 126 5.1 数据插入语句 ........................................................................................................................ 126 5.2 数据修改语句 ........................................................................................................................ 129 5.3 数据删除语句 ........................................................................................................................ 130 5.4 伪列的使用 ............................................................................................................................ 131 5.4.1 ROWID ........................................................................................................................... 131 5.4.2 UID和USER .................................................................................................................... 132 5.4.3 ROWNUM ...................................................................................................................... 132 5.5 DM自增列的使用 ................................................................................................................... 132 5.5.1 DM自增列定义 ............................................................................................................... 132 5.5.2 SET IDENTITY_INSERT 属性 ..................................................................................... 133 第6章视图 ........................................................................................................................................ 136 6.1 视图的作用 .......................................................................................................................... 136 6.2 视图的定义 ............................................................................................................................ 137 6.3 视图的删除 ............................................................................................................................ 139 6.4 视图的查询 ............................................................................................................................ 140 III 6.5 视图数据的更新 .................................................................................................................... 141 第7章嵌入式SQL ............................................................................................................................. 143 7.1 SQL前缀和终结符 ................................................................................................................. 143 7.2 宿主变量 ............................................................................................................................... 143 7.2.1 输入和输出变量 ............................................................................................................ 144 7.2.2 指示符变量 .................................................................................................................... 145 7.3 服务器登录与退出 ................................................................................................................ 145 7.3.1 登录服务器 .................................................................................................................... 145 7.3.2 退出服务器 .................................................................................................................... 146 7.4 游标的定义与操纵 ................................................................................................................ 146 7.4.1 定义游标语句 ................................................................................................................ 147 7.4.2 打开游标语句 ................................................................................................................ 147 7.4.3 拨动游标语句 ................................................................................................................ 148 7.4.4 关闭游标语句 ................................................................................................................ 150 7.4.5 关于可更新游标 ............................................................................................................ 150 7.4.6 游标定位删除语句 ........................................................................................................ 150 7.4.7 游标定位修改语句 ........................................................................................................ 151 7.5 单元组查询语句 .................................................................................................................... 152 7.6 动态SQL ............................................................................................................................... 153 7.6.1 EXECUTE IMMEDIATE立即执行语句 ........................................................................ 154 7.6.2 PREPARE准备语句 ........................................................................................................ 155 7.6.3 EXCUTE执行语句 ......................................................................................................... 155 7.7 异常处理 ............................................................................................................................... 156 第8章函数 ........................................................................................................................................ 157 8.1 数值函数 ............................................................................................................................... 166 8.2 字符串函数 ............................................................................................................................ 173 8.3 日期时间函数 ........................................................................................................................ 184 8.4 空值判断函数 ........................................................................................................................ 193 8.5 类型转换函数 ........................................................................................................................ 194 8.6 杂类函数 ............................................................................................................................... 195 8.7 系统函数 ............................................................................................................................... 196 8.8 存储加密函数 ........................................................................................................................ 215 8.9 标记处理函数 ........................................................................................................................ 222 8.10 备份恢复函数 ...................................................................................................................... 223 8.11 附加分离数据库 .................................................................................................................. 230 第9章一致性和并发性 ..................................................................................................................... 233 9.1 DM事务相关语句 ................................................................................................................... 233 9.1.1 事务的开始 .................................................................................................................... 233 9.1.2 事务的结束 .................................................................................................................... 233 9.1.3 保存点相关语句 ............................................................................................................ 234 9.1.4 设置事务隔离级及读写特性 ........................................................................................ 235 9.2 DM手动上锁语句 ................................................................................................................... 236 第10章存储模块 ............................................................................................................................... 238 10.1 存储模块的定义 .................................................................................................................. 238 10.2 存储模块的删除 .................................................................................................................. 246 10.3 存储模块的控制语句 .......................................................................................................... 247 IV 10.3.1 语句块 .......................................................................................................................... 247 10.3.2 赋值语句 ...................................................................................................................... 249 10.3.3 条件语句 ...................................................................................................................... 249 10.3.4 循环语句 ...................................................................................................................... 250 10.3.5 EXIT语句 ...................................................................................................................... 252 10.3.6 调用语句 ...................................................................................................................... 253 10.3.7 RETURN语句 ............................................................................................................... 255 10.3.8 NULL语句 .................................................................................................................... 255 10.3.9 GOTO语句 .................................................................................................................... 255 10.3.10 RAISE语句 ................................................................................................................. 256 10.3.11 打印语句 .................................................................................................................... 256 10.4 存储模块的异常处理 .......................................................................................................... 256 10.4.1 异常变量的说明 .......................................................................................................... 257 10.4.2 异常的抛出 .................................................................................................................. 257 10.4.3 异常处理器 .................................................................................................................. 257 10.4.4 异常处理用法举例 ...................................................................................................... 257 10.5 存储模块的SQL语句 .......................................................................................................... 259 10.5.1 游标 .............................................................................................................................. 259 10.5.2 动态SQL ...................................................................................................................... 260 10.5.3 游标变量 ...................................................................................................................... 261 10.5.4 返回查询结果集 .......................................................................................................... 261 10.5.5 SQL语句应用举例 ........................................................................................................ 261 10.6 客户端存储模块 .................................................................................................................. 264 10.7 子过程、子函数 .................................................................................................................. 265 10.7.1 子过程 .......................................................................................................................... 265 10.7.2 子函数 .......................................................................................................................... 266 10.8 %TYPE、%ROWTYPE ....................................................................................................... 266 10.8.1 %TYPE .......................................................................................................................... 266 10.8.2 %ROWTYPE ................................................................................................................ 267 10.9 记录类型 .............................................................................................................................. 267 10.9.1 记录类型定义 .............................................................................................................. 267 10.9.2 记录赋值 ...................................................................................................................... 268 第11章触发器 .................................................................................................................................. 270 11.1 触发器的定义 ...................................................................................................................... 270 11.1.1 触发器类型 .................................................................................................................. 277 11.1.2 触发器激发顺序 .......................................................................................................... 279 11.1.3 新、旧行值的引用 ...................................................................................................... 280 11.1.4 触发器谓词 .................................................................................................................. 281 11.1.5 变异表 .......................................................................................................................... 282 11.1.6 设计触发器的原则 ...................................................................................................... 283 11.2 触发器的删除 ...................................................................................................................... 284 11.3 禁止和允许触发器 .............................................................................................................. 284 11.4 触发器应用举例 .................................................................................................................. 286 11.4.1 使用触发器实现审计功能 .......................................................................................... 286 11.4.2 使用触发器维护数据完整性 ...................................................................................... 286 11.4.3 使用触发器保障数据安全性 ...................................................................................... 287 V 11.4.4 使用触发器派生字段值 .............................................................................................. 288 第12章DM安全管理 ..................................................................................................................... 289 12.1 创建角色语句 ...................................................................................................................... 289 12.2 删除角色语句 ...................................................................................................................... 290 12.3 授权语句(数据库权限) ....................................................................................................... 290 12.4 授权语句(对象权限) ........................................................................................................... 291 12.5 授权语句(角色权限) ........................................................................................................... 295 12.6 回收权限语句(数据库权限) ............................................................................................... 295 12.7 回收权限语句(对象权限) ................................................................................................... 297 12.8 回收权限语句(角色权限) ................................................................................................... 299 12.9 策略与标记管理 .................................................................................................................. 300 12.9.1 创建策略 ...................................................................................................................... 300 12.9.2 修改策略 ...................................................................................................................... 300 12.9.3 删除策略 ...................................................................................................................... 302 12.9.4 安全标记 ...................................................................................................................... 302 12.9.5 用户标记设置语句 ...................................................................................................... 303 12.9.6 表标记设置语句 .......................................................................................................... 306 12.10 审计设置语句 .................................................................................................................... 308 12.11 审计取消语句 .................................................................................................................... 312 12.12 审计信息查阅语句 ............................................................................................................ 314 12.13 审计分析 ............................................................................................................................ 314 12.13.1 创建审计分析规则 .................................................................................................... 314 12.13.2 删除审计分析规则 .................................................................................................... 316 12.14加密引擎 ............................................................................................................................. 316 12.14.1 创建加密引擎 ............................................................................................................ 316 12.14.2 修改加密引擎 ............................................................................................................ 317 12.14.3 删除加密引擎 ............................................................................................................ 320 第13章外部链接 ............................................................................................................................... 321 13.1 创建外部链接 ...................................................................................................................... 321 13.2 删除外部链接 ...................................................................................................................... 322 13.3 使用外部连接进行远程对象操作 ...................................................................................... 322 第14章DM备份还原 ......................................................................................................................... 324 14.1 备份数据库 .......................................................................................................................... 324 14.2 还原数据库 .......................................................................................................................... 325 第15章包 ......................................................................................................................................... 327 15.1 创建包 ................................................................................................................................. 327 15.1.1 创建包规范 .................................................................................................................. 327 15.1.2 创建包主体 .................................................................................................................. 327 15.2 删除包 ................................................................................................................................. 328 15.2.1 删除包规范 .................................................................................................................. 328 15.2.2 删除包主体 .................................................................................................................. 329 15.3 应用实例 .............................................................................................................................. 329 第16章同义词 .................................................................................................................................. 332 16.1 创建同义词 .......................................................................................................................... 332 16.2 删除同义词 .......................................................................................................................... 332 附录1 关键字和保留字 ...................................................................................................................... 334 VI 附录2 SQL语法描述说明 ................................................................................................................... 338 附录3 SQL命令参考 ........................................................................................................................... 341 附录4系统存储过程和函数 ............................................................................................................... 343 附录5 DM技术支持 ............................................................................................................................ 387
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小张帅三代

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值