利用SQL Server 7.0数据库实现数据的完整性

来源 :中国科技博览 | 被引量 : 0次 | 上传用户:gongpeng
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要]本文主要介绍了在SQL Server数据库应用系统中,在服务器端和客户端实现数据完整性的设计方法,并结合通信管理信息系统(简称JY-HMIS),阐述了实施数据完整性的策略。
  [关键词]数据完整性 数据库 事务处理
  中图分类号:TP311 文献标识码:A 文章编号:1009-914X(2013)10-0272-01
  前言
  数据完整性是指数据的正确性和一致性,它有两方面的含义:(1)数据取值的正确性,即字段列值必须符合数据的取值范围、类型和精度的规定;(2)相关数据的一致性,即相关表的联系字段的列值匹配。在数据库应用系统中,保证数据完整性是应用系统设计的基本要求;数据完整性实施的好坏,关系到数据系统的正确性、一致性和可靠性,关系到系统的成败。JY-HMIS采用C/S模式体系结构,其数据库应用系统为:SQL Server 7.0;客户端的开发工具为:PowerBuilder 6.5。下面主要从服务器端数据库管理系统及客户端的应用程序一,两个方面进行介绍。
  1、服务器端利用SQL Server 7.0数据库实现数据的完整性
  在用INSERT、DELETE、UPDATE语句修改数据库内容时,数据的完整性可能遭到破坏,为了保证存放数据的正确性和一致性,SQL Server对数据施加了一个或多个数据完整性约束。这些约束限制了对数据库的数据值,或者限制了数据库修改所产生的数据值,或限制了对数据库中某些值的修改。
  在SQL Server关系数据库中,主要有以下3类数据完整性:实体完整性(保证表中所有行唯一);参照完整性(主健和外健关系维护,它涉及两个或两个以上的表的数据的一致性维护);域完整性(某列有效性的集合,是对业务管理或是对数据库数据的限制)。在报务器端有两种方法实现数据完整性:定义Creat Table 完整性约束及定义规则、缺省、索引和触发器。
  1.1 定义 createtable 完整性约束
  此方法是在创建数据库表的命令语句中,加入表级约束或列级来实现数据完整性。如在建表语句中加入非空(not null)约束、缺省(default)约束、唯一码(unique)约束、主键码(primary key)约束、外键码(foreign key)约束、校验(check)约束等。它的主要特点是:定义简单、安全可靠、维护方便。
  1.1.1 非空约束、缺省约束和校验约束
  非空约束限定了列值不能为空值;缺省约束指定当向数据库插入数据时,若用户没有明确给出某列的值时,SQL Server 自动输入预定值;校验约束则用来限定列的值域范围。
  例如,在创建通信登记表中,限定登记日期、类别编码、登记号、项目名等列值不允许为空值;时长的缺省值为1;计价的缺省值为0。
  1.1.2 主键约束和唯一约束
  主键约束和唯一约束,均为指定的列建立唯一性索引,即不允许唯一索引的列上有相同的值。主键约束更严格,不但不允许有重复值,而且也不允许有空值。
  1.1.3 外键约束
  外键约束又称参照完整性约束,用来限定本表外键码列值与相关表主键码字段列值的匹配,即保证相关数据的一致性。
  1.2 定义规则、缺省、索引和触发器
  在数据库表的创建命令语句中定义约束的方法,虽然具有简单、方便、安全等特点,但它只对特定的表有效,不能应用到其他表,并且只能使用 alter table 命令修改或删除约束,缺乏一定的灵活性。与此相反,在数据库中创建与表相对独立的规则、索引和触发器对象,也能实现数据完整性,而且能实施更复杂、更完善的数据完整性约束。它的主要特点是功能强、效率高、维护方便。
  1.2.1 定义规则
  规则类似于表定义中的校验约束,用来限定列的值域范围。但它不限定于特定表,可以绑定到其他表的列或用户自定义的数据类型中使用。
  1.2.2 定义缺省
  缺省类似于表定义中的缺省约束,用来设置列的缺省值输入。它也不限定于特定表,可以绑定到其他表的列或用户自定义数据类型中使用。
  1.2.3 定义索引
  索引类似于表定义中的唯一约束,用来保证列值的唯一性。此外,它还能使用聚簇索引和非聚簇索引选项,来增强数据检索的性能。
  1.2.4 定义触发器
  触发器是一种实施复杂的完整性约束的有效方法,当对它所保护的数据进行修改时自动激活,防止对数据进行不正确、未授权或不一致的修改。类似于表定义中参照完整性约束;触发器也可用来保证相关数据的一致性。它还能完成一些表定义参照完整性的约束不能完成的任务。
  2、客户端利用PB开发的应用程序实现数据的完整性
  2.1 用PB的控件来确保数据的完整性
  在以PB开发工具编写的应用程序中,可使用数据窗口对象的列校验属性来检查输入数据的正确性;在窗口输入界面中还可以采用下拉列表、复选框、单选按钮等控件,实现固定值选取输入来确保数据的正确;另外,应用程序本身也可以对输入数据进行有效检查来确保数据的完整性。
  2.2 利用事务的特点来保证数据的一致性
  因PB的每一操作都是基于控件中的事件,所以一个完整的事务处理要集中在一个事件或一个操作单元中。例如,门诊划价收费中的付款处理;同一个收费序号下的数据,经过处理后要记入明细帐、一级明细帐、总帐,同时还要更新收费序号登记表等;所有这些处理算是一个完整的任务,必须等所有的语句都执行成功后,才能对数据库进行提交;如果有一条语句未执行成功,就要撤消该事务的一切操作,回退到事务开始的状态,这样才能保证数据的一致。利用客户端应用程序实现数据完整性的方法,其主要特点是:交互性好、功能强,但编程偏大、维护困难、可靠性差。
  3、实现数据完整性的策略
  由上述可见,在SQL Server数据库应用系统中,实现数据完整性的方法各有其特点。对具体应用系统,可根据需要采用其中一种或多种方法来建立数据完整性的机制,其策略为:
  (1)对于通过窗口操作输入的数据,一般采用客户端应用程序来确保数据的完整性。这样,一方面可把非法数据在提交到数据库之前就拒之门外,另一方面可使用户及时得到操作反馈信息,做出正确的选择。
  (2)对于通过其他途径转入的数据,一般需要服务器端数据库管理系统来实现数据的完整性。
  (3)对于数据一致性的维护,宜于由服务器端数据库的触发器或表定义的约束来实现。这样可降低客户端应用程序的开发量,提高应用系统的运行效率、可维护性及可靠性。
  (4)对于数据完整性和安全性要求较高的系统,则需要采用多层保护屏障来确保数据的完整性和安全性。如:既在客户端应用系统程序检查输入数据的有效性,同时又在服务器端数据库中建立表的约束、规则、缺省和触发器等进行数据完整性约束。这样可以提高系统数据的可靠性和安全性。
  4、结语
  数据库完整性是数据库应用系统的最基本要求之一。在SQL Server数据库应用系统中,可采用服务器端数据库表定义约束和数据库规则、缺省、索引、触发器及客户端的应用程序等三种方法实施数据的完整性。它们各有其特点,在应用系统中,应根据具体情况,灵活使用。
  参考文献
  [1] 杨正洪.SQL Server 7.0 关系数据库系统管理与开发指南.机械工业部出版社,2000.
  [2] 薛华成.管理信息系统.清华大学出版社,1995.
其他文献
[摘 要]我国的铁路高速动车组共有四个技术序列,分别是CRH1、CRH2、CRH3、CRH5型车。其中空调系统在动车组的配套技术中发挥着不可或缺的关键性作用。本文主要是从我国4种型式铁路高速动车组空调系统方面,做了较为全面的比较研究。  [关键词]高速动车组 系统构成 主要技术参数  中图分类号:U266 文献标识码:A 文章编号:1009-914X(2013)10-0267-01
期刊
[摘 要]本文主要阐述了电厂用变压器温度异常升高、油位异常、轻气体保护动作信号、差动保护动作跳闸、过电流保护动作跳闸、强迫油循环冷却变压器冷却装置故障等几种异常与事故的处理等问题。  [关键词]变压器;异常;事故;处理  中图分类号:U264.3 文献标识码:A 文章编号:1009-914X(2013)10-0274-01  变压器是发电厂的重要设备,一旦发生变压器故障,会造成较大的经济损失,还可
期刊
[摘 要]目前MMS业务平台和软交换已经成为通信领域较为关注的两大热点。本文初步探讨了以软交换为核心的下一代网络对MMS业务平台的支持,提出了一种基于软交换的多媒体短消息(MMS)业务平台设计方案。  [关键词]软交换 MMS Parlay API MMSC  中图分类号:TN915.05 文献标识码:A 文章编号:1009-914X(2013)10-0273-01  1、引言  多媒体信息(MM
期刊
中图分类号:G613.5 文献标识码:A 文章编号:1009-914X(2013)10-0277-01  一、音乐学科与幼儿学习的需要  (一)体验学习是音乐学科本身的需要  1.音乐学科是以审美体验为核心价值的艺术  音乐在所有艺术门类中被人们称为皇冠艺术,它以自身独特的魅力将人类的声音艺术化,它诉诸听觉,却直达心灵。“音乐审美作为一项人类活动,在主体性、目的性上的划分是属于感性的,是人以其听觉
期刊
[摘 要]对互联网移动通信协议进行了探讨;分析了现有的DHCP协议与Mobile-IP协议的不足; 提出了一种新的移动通信协议VIP 协议。介绍了 虚拟专用网络,分析了VIP——虚拟互连网协议。  [关键词]移动通信 互联网 VIP协议 虚拟专用网络  中图分类号:TP393.4 文献标识码:A 文章编号:1009-914X(2013)10-0269-01  如今IP协议与传统IP协议有很大的不同
期刊
[摘 要]角件作为普通干货集装箱、罐式集装箱、特种箱以及近海箱等的重要受力部件,我们应该关注它哪些性能,它的哪些性能是我们所不能忽视的,如,低温冲击韧性达到多少可以满足使用要求,这里简单和大家介绍予以探讨,希望对一些制造厂在采购及验收、复验时提供些许帮助。  [关键词]角件 集装箱 性能 低温冲击韧性  中图分类号:TG162.7 文献标识码:A 文章编号:1009-914X(2013)10-02
期刊
此文续《物理宇宙公式、宇环论、量形几何、物数学 之 物数理学》为第25篇。碍于篇幅只作纲要、结果描述,函请读者谅解!  【哲数物理】:(文字哲理论)与(数字量化论)都描述(物理实在)。数字量化论从文字哲理论中提炼特征点♂用数字符号进行量化论述,弊端是不能自我介绍出去,须文字哲理论赋予其灵魂方可进行传承交流→数学语言简炼但不能自我传承。[二十世纪的基础理论物理重数量轻本质必导致混沌模糊;(爱因斯坦:
期刊
[摘 要]本文对山西煤层气工程采用低压长距离供电的可行性进行研究,通过对电机端的压降、三相短路电流、两相短路电流及单项接地短路电流的计算,选取适当的电缆及电气保护元件,在满足规范要求,综合考虑技术经济性的前提下,实现电压长距离供电。  [关键词]煤层气 低压 长距离 压降 短路电流  中图分类号:P618.13 文献标识码:A 文章编号:1009-914X(2013)10-0268-01  一、前
期刊
[摘 要]可用性作为动车组运营的一项重要指标,常用作车辆考核。本文从可用性的表达式入手提供了达到车辆可用性主要的方法讨论。  [关键词]可用性 Availability 可靠性 Reliability 可维护性 Maintainability 车辆 Vehicle  中图分类号:U269 文献标识码:A 文章编号:1009-914X(2013)10-0265-01  近些年,随着我国客运线上运行的
期刊
[摘 要]PLC技术已广泛应用于各种控制领域,尤其是在工业环境中的控制器有显著表现。一般而言,技术可靠性比较高的出现故障的概率也是较低的,但是我们出现故障都难避免。我们引发故障有很多种,而故障引发的后果也很多,影响PLC工作环境主要因素是温度量,湿度量,扩音与细沙粉尘等。虽然这些因素我们现在不能完全控制住,但是我们可以通过日常检查与维护来解决,从而让我们把故障率降到最低。故障不严重的就能造成停机生
期刊