达梦数据库使用教程,个人足够

写在前面:文章中引用了其他作者的优秀文章,有问题联删

1.下载安装

装前准备:保证操作系统至少 1 GB 以上的可用内存 (RAM)

官网链接:技术文档-武汉达梦数据库股份有限公司

官网链接:产品下载 | 达梦数据库

下载好的是一个.iso文件,直接打开

官方技术文档:数据库安装 | 达梦技术文档

每种安装方式里面都有很详细的介绍

简单介绍一下达梦数据库(典型安装)安装自带的工具:

数据库配置助手:./dbca.sh就是一开始安装完了初始化数据库的工具,用于创建、删除数据库实例和服务的。

ps:这里需要注意的是起名字需要使用’‘-’‘的,在disql操作创建的对象时需要带上双引号进行转义。

服务查看器:./dmservice.sh 查看所有的服务以及属性,控制服务启停。

管理工具:./manager连接和操作数据库,相当于一个数据库连接工具,方便进行日常运维。

ps:这里也需要注意在创建新的对象时名字以及密码带有特殊字符的时候会需要转义。

控制台工具:./console数据库管理员可以完成服务器参数配置、管理 DM 服务、脱机备份与还原、查看系统信息、查看许可证信息等功能。

审计分析工具:./analyzer审计规则的创建与修改,审计记录的查看与导出。按照我们的需求创建审计规则和条件来筛选日志里符合条件的记录。

性能监视工具:./monitor监视服务器的活动和性能情况,并对系统参数进行调整的客户端工具,它允许系统管理员在本机或远程监视服务器的运行状况。主要包括:统计分析、性能监视、调优向导、预警警告四大功能。

迁移工具:./dts提供了主流大型数据库迁移到 DM、DM 到 DM、文件迁移到 DM 以及 DM 迁移到文件等功能。

SQL交互式查询工具:打开是一个dos窗口,用于执行disql命令。

这些附带的数据库工具,在上面的官方技术文档也有详细的使用介绍

2.文件概览

3.核心概念

数据库实例:数据库软件运行时的内存结构和后台进程集合,它代表了对数据库物理文件的实际操作层。每个数据库实例对应一个独立的数据库服务进程,负责管理和维护数据库的读写操作、缓存管理、事务处理、并发控制等任务。

数据库服务:是指数据库实例对外提供的网络服务,允许客户端通过网络连接到数据库并执行SQL语句。数据库服务一般与数据库监听器相关联,监听特定端口上的连接请求,并将这些请求转发给相应的数据库实例进行处理。

用户:是在数据库系统中拥有权限的实体,它们能够登录到数据库并对数据库中的数据进行访问和操作。每个用户都有自己的权限体系和关联的模式,在各自的模式下创建和管理数据库对象。用户通过认证后,可以在其所拥有的模式内执行CRUD(Create, Read, Update, Delete)等操作,以及执行其他数据库管理任务。

模式(SCHEMA):模式是一个逻辑容器,用于组织数据库对象,如表、视图、索引、存储过程等。在一个数据库中,可以有多个模式,每个模式都隶属于一个特定的数据库用户,并且具有独立的命名空间。模式定义了数据库对象的结构和关系,但不包含具体的数据。

页: 是最小的逻辑单元, 是数据库最小的分配单位。 ( 默认 8k,(4k,8k,16k,32k),数据页包括 4 个部分: 页头控制信息, 数据, 空闲空间, 行偏移数组。如果页的大小设置得过大,虽然可以减少IO次数,但可能会导致内存的浪费;如果页的大小设置得过小,虽然可以提高内存的利用率,但可能会增加IO次数。

簇: 由磁盘上连续的页组成, 一个簇总是在一个数据文件中, 由 16 或是 32 个页组成。如果簇的大小设置得过大,虽然可以减少存储空间的使用,但可能会导致数据的检索效率降低;如果簇的大小设置得过小,虽然可以提高数据的检索效率,但可能会增加存储空间的使用。

段: 一组簇的集合, 是簇的上级逻辑单位, 一个段可以跨多个数据文件, 一个簇只能在一个数据文件中。段是达梦数据库中存储特定类型数据的逻辑单位,例如表段、索引段等。段的管理方式会影响数据库的性能,如果段的管理方式不当,可能会导致空间的浪费或者检索效率的降低。

数据文件: 由一个或多个段组成。

表空间: 是一个或多个数据文件组成, 最多由 256 个数据文件。

关系:

一个数据库实例通常对应一个数据库,而一个数据库在分布式或集群的情况下可能会对应多个实例,但不会在同一时间点对数据库进行直接管理。每个数据库实例通常只与一个数据库服务关联,以提供特定的数据访问和管理功能。

1、SYS -----达梦数据库内置管理用户,不能登录数据库,数据库使用的大部分的数据字典和动态性能视图SYS; 2、SYSDBA-----数据库的管理员; 3、SYSAUDITOR---审计用户; 4、SYSSSO---安全用户在DM数据库中;

每一个用户都有一个默认的表空间,对于 SYS、SYSSSO、SYSAUDITOR 系统用户,默认的用户表空间是 SYSTEM,SYSDBA 的默认表空间为 MAIN,新创建的用户如果没有指定默认表空间,则系统自动指定 MAIN 表空间为用户默认的表空间。 模式:一个用户默认对应一个同名的模式,但一个用户也可以创建多个模式; 角色:类似于用户组,创建角色时一般会指定角色权限,将角色赋给一个用户,这个用户就拥有了这个角色中的所有权限,DM数据库预定义角色有三个: DBA、PUBLIC、RESOURCE。

4.使用心得

数据迁移(迁移工具dts):

图形化界面迁移工具迁移时如果字段名过长会报错:列长度超出定义

先自定义映射类型

然后新建迁移,我这里是MySQL转DM

不使用默认类型映射,使用刚刚自定义的(如果大家还有别的方法欢迎留言讨论或者告知作者)

注意:

这里迁移工具是会将“-”也保留的,所以在操作数据库时需要使用“”“对”-“进行转义

我们勾选了保持对象名的大小写,但是如果我们的数据库没有设置区分大小的话,在进行数据操纵语言(DML)操作,如插入、更新、删除数据时,对象名的大小写通常不会影响操作的结果,因为数据库本身不区分大小写。但是,如果查询条件中包含了字符串比较,那么字符串的大小写就需要根据具体情况来处理;进行数据定义语言(DDL)操作,如创建表、修改表结构等时,由于迁移工具保持了对象名的大小写,应该在DDL语句中使用与迁移工具保持一致的大小写形式。这样一来非常容易产生混乱,最好就是两个都保持一致。

用户名不区分大小写,在数据库里面统一保存为大写。而对于模式名,如果其为小写,那么在使用时需要加双引号,否则会报错。大写模式名则不需要加双引号。

管理工具:

单独操作达梦数据库时推荐自带的管理工具(manager)简单好用

同时操作不同的数据库推荐DBeaver

注意:因为DBeaver没有达梦数据库的驱动,所以需要新建驱动,下面是操作流程

1、DBeaver可以绿色版安装,下载zip包解压即可使用

下载地址:Download | DBeaver Community

image.png

2、解压完成后运行dbeaver.exe

image.png

image.png

3、选择“数据库”-“驱动管理器”,然后点击“新建”

image.png

4、创建新驱动-“设置”界面填写“驱动名称”,“类名”,“URL模板”,“默认端口”

5、创建新驱动-“库”界面选择添加文件,添加DM JDBC驱动,然后点击“确定”

6、配置完成后选择“数据库”-“新建连接”,选择“DM”然后根据提示下一步输入账号密码,再点击完成即可连接达梦数据库成功

image.png

image.png

7、点击“SQL”,右边界面就会打开一个SQL编辑器,可以执行SQL语句

image.png

image.png

Linux启用图形化工具无法启动:

达梦数据库无法打开图形化界面的解决方法 (taodudu.cc)

单机安装问题 | 达梦技术文档 (dameng.com)

若实在无法启动图形化界面,使用命令行进行操作:

单机安装问题 | 达梦技术文档 (dameng.com)

按照教程进行实例化后,登录达梦数据库(命令行方式,manager图形管理工具直接启动)

[root@localhost bin]# ./disql SYSDBA/SYSDBA@localhost:5236  不含特殊字符
                     ./disql usky_cloud/'"Yt$66u"'@localhost:5238  含特殊字符

带有特殊字符需要进行转义!

推荐新建一个数据库实例和服务使用,默认5236端口数据库实例是区分大小写的,默认大写,修改不便

达梦数据库命令行初始化操作_达梦数据库初始化命令-CSDN博客

达梦数据库三种模式:

达梦数据库支持 3 种数据库模式: Normal 模式、 Primary 模式和 Standby 模式。

1.1 Normal 模式(普通模式)

  • 用户可以正常访问数据库,操作没有限制。

  • 正常生成本地归档,但不发送实时归档(Realtime)、即时归档(Timely)和异步归档(Async)。

将数据库切换为 Normal 模式:

ALTER DATABASE NORMAL;

1.2 Primary 模式(主库模式)

  • 用户可以正常访问数据库,操作有极少限制。

  • 对临时表空间以外的所有的数据库对象的修改操作都强制生成Redo日志。

  • 正常生成本地归档,支持实时归档(Realtime)、即时归档(Timely)和异步归档(Async)。在归档有效时,发送REDO日志到备库;

  • 该模式下部分功能受限,包括:不支持修改表空间文件名、不支持修改arch_ini参数。正常生成本地归档,支持实时归档(Realtime)、即时归档(Timely)和异步归档(Async)。

将数据库切换为Primary模式:

ALTER DATABASE PRIMARY;

1.3 Standby 模式(备库模式)

  • 可以执行数据库备份(不能执行数据库作业备份)、查询等只读数据库操作。

  • 接收主库发送过来的REDO日志并重做。

  • 正常生成本地归档,正常发送异步归档日志;但实时归档(Realtime)、即时归档(Timely)均强制失效。

  • 该模式下时间触发器、事件触发器等都失效。

  • 另外,还支持临时表的Insert/Delete/Update操作。因为临时表数据的修改不会产生Redo日志,所以同样主库对临时表的修改无法同步到备库。

将数据库切换为 Standby 模式:

ALTER DATABASE STANDBY;

需要注意的是:

  • 三种模式只能在MOUNT状态下设置,模式之间可以相互转换。

  • 对于新初始化的库,首次启动不允许使用mount方式,需要先正常启动并正常退出,然后才允许mount方式启动。

  • 一般情况下,数据库为NORMAL模式,如果不指定MOUNT状态启动,则自动启动到OPEN状态。

  • 在需要对数据库配置时(如配置数据守护、数据复制),服务器需要指定MOUNT状态启动。

  • 当数据库模式为非NORMAL模式(PRIMARY、STANDBY模式),无论是否指定启动状态,服务器启动时自动启动到MOUNT状态。

  • 修改DMDSC库的模式必须在DMDSC库所有实例都处于MOUNT状态下才能进行,只需要在一个节点上执行以上语句即可。

达梦数据库状态:

达梦数据库的状态包括startup、mount、after redo、open、suspend、shutdown这几种状态,但不是所有的状态都能相互转换和人工干预。

2.1 Startup 状态

系统刚启动时设置为Startup状态。

2.2 Mount 状态

数据库在Mount状态下,不能修改数据,不能访问表、视图等数据库对象,但可以执行修改归档配置、控制文件和修改数据库模式等操作,也可以执行一些不修改数据库内容的操作,比如查询动态视图或者一些只读的系统过程。

由于Mount状态不生成PWR 日志,因此数据页可以正常刷盘,也正常推进检查点。系统从Open状态切换为Mount状态时, 会强制回滚所有活动事务,但不会强制清理(Purge)已提交事务,不会强制断开用户连接,也不会强制Buffer中的脏页刷盘。

将数据库修改为mount状态:

ALTER DATABASE MOUNT;

示例:

服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间: 5.273(毫秒)
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          OPEN
已用时间: 0.407(毫秒). 执行号:5.
SQL> alter database mount;
操作已执行
已用时间: 00:00:01.778. 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          MOUNT

PWR日志:Page Written Record日志,是REDO日志里包含有一种特殊的记录。包括(ts_id, fil_id, page_no, page_lsn)信息。每个数据页刷盘时,都会生成一条对应的PWR日志。

2.3 After Redo 状态

系统启动过程中联机日志重做完成后,回滚活动事务前设置为After Redo状态。非Standby模式的实例在执行alter database open操作前,也会将系统设置为After Redo状态。

2.4 Open 状态

可以访问数据库对象,对外提供正常的数据库服务,不能进行控制文件维护、归档配置等操作。

将数据库修改为Open状态:

(当系统处于Primary/Standby模式时,必须强制加上FORCE子句。)

ALTER DATABASE OPEN [FORCE];

示例:

SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          MOUNT
 
已用时间: 54.783(毫秒). 执行号:4.
SQL> alter database open;
操作已执行
已用时间: 00:00:09.971. 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          OPEN
 
已用时间: 0.407(毫秒). 执行号:5.

2.5 Suspend 状态(挂起)

数据库在Suspend状态下,可以访问数据库对象,甚至可以修改数据,但限制Redo日志刷盘, 一旦执行COMMIT等触发Redo日志刷盘的操作时,当前操作将被挂起。

相比Open到Mount的状态切换,Open到Suspend的状态切换更加简单、高效,不会回滚任何活动事务,在状态切换完成后,所有事务可以继续执行。

在DataWatch主备系统中suspend状态的自动切换的使用:

一般在修改归档状态之前将系统切换为Suspend状态,比如备库故障恢复后,在历史数据(归档日志)同步完成后,需要重新启用实时归档功能时:

  • 将系统切换为Suspend状态,限制Redo日志写入联机Redo日志文件;

  • 修改归档状态为Valid;

  • 重新将数据库切换为Open状态,恢复Redo日志写入功能;

  • 备库与主库重新进入实时同步状态。网址:yii666.com

实时归档失败时(比如网络故障导致),Primary实例将试图切换成Suspend状态,防止后续的日志写入。因为一旦写入,主备切换时有可能备库没有收到最后那次的RLOG_PKG,导致主库上多一段日志,很容易造成主备数据不一致。当实例成功切换为SUSPEND状态时,可直接退出,强制丢弃多余的日志,避免主备数据不一致。

将数据库修改为Suspend状态:

ALTER DATABASE SUSPEND;

注意:修改DMDSC库的状态为SUSPEND时,库内所有实例都不能处于MOUNT状态,只需要在一个节点上执行ALTER DATABASE SUSPEND语句即可。

示例:

Session 1:
SQL> alter database suspend;
操作已执行
已用时间: 100.968(毫秒). 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          SUSPEND
 
Session 2:
SQL> select count(*) from test;   ---查询正常
 
行号     COUNT(*)            
---------- --------------------
1          3
 
已用时间: 2.639(毫秒). 执行号:8.
 
SQL> insert into test values(1,'a',10000);    ---插入正常
影响行数 1
 
已用时间: 0.882(毫秒). 执行号:11.
SQL> commit;                    ---但是提交会挂起
 
 
Session 3:
SQL> create table t(id int);  ---设计会一直挂起
 
Session 1:
修改为open状态:
SQL> alter database open; 
操作已执行
已用时间: 0.644(毫秒). 执行号:0.
 
Session 2:创建成功
SQL> create table t(id int);   
操作已执行
已用时间: 00:05:41.432. 执行号:7.
 
Session 3:  提交成功
SQL> insert into test values(1,'a',10000);
影响行数 1
 
已用时间: 0.882(毫秒). 执行号:11.
SQL> commit;
操作已执行
已用时间: 00:01:44.580. 执行号:12.
SQL>

2.6 Shutdown 状态

实例正常退出时设置为Shutdown状态。

数据库状态之间的切换

  • Open状态与Mount状态可以相互切换;

  • Open状态与Suspend状态可以相互切换;

  • Mount和Suspend状态不能直接转换;

  • 其他状态为系统内部状态,用户不能主动干预。

另外, 可以通过参数ALTER_MODE_STATUS来控制是否允许手工修改服务器的模式、状态和OGUID,1:允许;0:不允许。默认为1。此参数可以动态修改。

示例:

  • Open状态与Mount状态的相互切换

SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          OPEN
 
已用时间: 0.287(毫秒). 执行号:13.
SQL> alter database mount;
操作已执行
已用时间: 00:00:01.760. 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          MOUNT
 
已用时间: 0.677(毫秒). 执行号:14.
SQL> alter database open;
操作已执行
已用时间: 00:00:01.741. 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          OPEN
 
已用时间: 0.280(毫秒). 执行号:15.
  • Open状态与Suspend状态的相互切换

SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          OPEN
 
已用时间: 0.280(毫秒). 执行号:15.
SQL> alter database suspend;
操作已执行
已用时间: 100.965(毫秒). 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          SUSPEND
 
已用时间: 0.700(毫秒). 执行号:16.
SQL> alter database open;
操作已执行
已用时间: 0.517(毫秒). 执行号:0.
SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          OPEN
 
已用时间: 0.291(毫秒). 执行号:17.
  • Mount状态与Suspend状态不能直接切换

mount状态切换suspend状态:

SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          MOUNT
 
已用时间: 0.673(毫秒). 执行号:18.
SQL> alter database suspend;
alter database suspend;
第1 行附近出现错误[-510]:系统处于MOUNT状态.
已用时间: 0.523(毫秒). 执行号:0.

suspend状态切换mount状态:

SQL> select status$ from v$instance;
 
行号     STATUS$
---------- -------
1          SUSPEND
 
已用时间: 0.665(毫秒). 执行号:19.
SQL> alter database mount;
alter database mount;
第1 行附近出现错误[-515]:系统处于SUSPEND状态.
已用时间: 0.337(毫秒). 执行号:0.
SQL>

5.常见问题

DM 支持的字段名最大长度 正规标识符的最大长度是 128 个英文字符或 64 个汉字。

disql 中,用";" 无法结束,或报错:The script file is not complete,last sql has not been executed 创建触发器,存储过程,函数,包,模式等时需要用“/”结束。

登录进入以后Deldte无法删除 需要使用Ctrl+Delete

如何查询一个表涉及到的所有触发器

select * from dba_triggers where DBA_TRIGGERS.OWNER = '模式名' AND DBA_TRIGGERS.TABLE_NAME = '表名'

不退出disql切换用户 conn

达梦数据库Java连接:JAVA | 达梦技术文档 (dameng.com)

DTS 迁移时,报错:“非法 IDENTITY 列类型” 达梦数据库也有自增函数 IDENTITY(2,1),但是只支持 INT ,BIGINT 两种字段类型,需手动修改映射关系为字段 int 或者手动修改 SMALLINT 为 INT 类型再进行建表。

运行 SQL 文件/执行 SQL 脚本

  • Windows 环境

启动 disql 时,运行脚本如下:

Copydisql SYSDBA/SYSDBA `D:\test.sql

启动 disql 之后,运行脚本如下:

Copystart D:\test.sql;
  • Linux 环境

Copy./disql SYSDBA/SYSDBA\ `/dev/test.sql**
  • 44
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值