数据库触发器机制设计与实现 - 中国计算器网
欢迎光临中国betway必威官网登录网
加入收藏夹 | English
数据库触发器机制设计与实现
来源:  作者:本站
数据库管理系统作为信息系统的核心部件,在信息化时代所充当的角色是其它任何软件所不能替代的。当前数据库应用的一个普遍要求是数据库管理系统能够在一些数据库相关事件发生时触发预先定义的操作,实现信息管理的自动化,因此引进了触发器机制。触发器可以增强引用完整性,加强复杂业务的规则,或者监控数据库的变动,并执行一定的数据操作。   

触发器机制实现主要涉及触发事件的检测以及触发条件的判决等关键技术问题,以及对触发器的编译存储和调用执行等具体操作。   

本文以国产数据库管理系统GKD-Base为原型,在兼容Oracle 规范的PL/SQL引擎基础上,提出一套解决方案,对触发器的关键技术问题进行了探讨,并设计实现了数据库的触发器机制,扩展了数据库管理系统GKD-Base的功能。   

1 GKD-Base PL/SQL 引擎

GKD-BASE数据库是一个具有自主知识产权的数据库管理系统,具有兼容SQL89标准的SQL引擎,能够为用户提供一个统一、有效的数据库访问接口(XAPI),实现对数据库的各种操作。为了融合SQL语言强大的集合数据处理能力和第三代语言(3GL)灵活的过程处理能力,在GKD-Base上已初步实现了兼容Oarcle PL/SQL V.23的PL/SQL引擎。    中`国`电`子`网 www.d`i`a`n`z`i.cn

GKD-Base PL/SQL引擎包括编译器、解释器和异常处理三个模块。在编译阶段,根据PL/SQL语言兼有过程式语句和SQL语句的特点,采取分而治之策略,把过程语句和SQL语句分开处理。对于SQL语句,编译器首先建立SQL语句结点,进行相应的变量绑定和语法检查;检查无误后产生语法树形式的中间代码。对于过程语句,编译器将对语句成分进行语法分析,对声明的变量和数据类型建立相应的符号表,最终产生语法树形式的中间代码。解释器的作用是对编译器生成的中间代码进行解释执行。解释器与编译器对应,具有相对独立的SQL语句解释模块和过程语句解释模块。另外,解释器还包括执行状态堆栈的管理、与GKD-Base SQL引擎的调用接口。异常处理模块主要实现程序运行时的错误检查和报告,并支持用户自定义异常和预定义异常的检查和处理。   

GKD-Base PL/SQL引擎可以实现对过程式语句、SQL语句与游标、存储子程序及包的编译和解释执行。   

2 触发器实现的关键问题 中*国*电*子*网 www#dianzi#cn

触发器定义了当某些数据库相关事件发生时数据库应采取的动作。触发器可增强引用完整性,加强复杂业务的规则或者监控数据库的变动,其实现主要涉及到触发事件的检测以及触发条件的判决等关键技术问题。   
上一页12 3 4 5 下一页
关于本站 | 会员服务 | 隐私保护 | 法律声明 | 站点地图 | RSS订阅 | 友情链接
免责声明:凡本站注明来源为xx所属媒体的作品,均转载自其它媒体转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。