焦点期刊
在线客服

著作编辑 著作编辑

咨询邮箱:568476783@qq.com

计算机论文

服务器端数据库管理系统和客户端应用程序

时间:2022-08-04 22:16 所属分类:计算机论文 点击次数:

前言
数据完整性是指数据的正确性和一致性,它有两个含义:(1)数据值的正确性,即字段列必须符合数据值范围、类型和精度的规定;(2)相关数据的一致性,即相关表的连接字段的列匹配。在数据库应用系统中,确保数据完整性是应用系统设计的基本要求;数据完整性的实施与数据系统的正确性、一致性和可靠性、系统的成败有关。JY-HMIS采用C/S其数据库应用系统为:SQLServer7.0;客户端开发工具为:PowerBuilder6.5.以下主要从服务器端数据库管理系统和客户端应用程序一两个方面进行介绍。
1服务器端使用SQLServer7.0数据库实现了数据的完整性
在用INSERT,DELETE,UPDATE为了保证存储数据的正确性和一致性,可能会破坏数据的完整性,SQLServer对数据施加一个或多个数据完整性限制。这些限制限制了数据库的数据值、数据库修改产生的数据值或数据库中某些值的修改。
在SQLServer在关系数据库中,主要有以下三种数据完整性:实体完整性(保证表中所有线路的唯一性);参考完整性(主体健康与外部健康关系维护,涉及两个或两个以上表的数据一致性维护);域完整性(某一列有效性的集合是业务管理或数据库数据的限制)。报务器端有两种实现数据完整性的方法:定义CreatTable完整性约束和定义规则,缺省,索引和触发器。
1.1定义createtable完整性约束
该方法是在创建数据库表的命令句中添加表级约束或列级,以实现数据完整性。例如,在建表句中添加非空(notnull)约束,缺省(default)约束,唯一的代码(unique)约束,主键码(primarykey)约束,外键码(foreignkey)约束,校验(check)约束等。其主要特点是:定义简单,安全可靠,维护方便。
1.1.1非空约束、缺省约束和校验约束
非空限制限制列值不能为空;缺失约束指定当数据插入数据库时,如果用户没有明确给出列值,SQLServer自动输入预定值;验证约束用于限定列值域范围。
例如,在创建图书登记表时,限制登记日期、图书类别编码、登记号、中文名称等列值不得为空值;页数缺失值为1;单价缺失值为0;图书状态只能为:“在馆”,“借出”,“丢失”之一。
1.1.2主键约束和唯一约束
主键约束和唯一约束都是指定列建立的唯一索引,即不允许唯一索引列具有相同的值。主键约束更严格,不仅不允许重复,而且不允许空。
例如,在科室编码表中,对列ksbm创建主要约束,对ksmc创造唯一的约束。
1.1.3外键约束
外键约束又称参考完整性约束,用于限制本表外键码列值与相关主键码字段列值的匹配,即保证相关数据的一致性。
例如,在创建医生编码表时,医生所属部门ssks为外键码,限制其与科室编码表中的科室编码ksbm列值一致。
1.定义规则,缺省,索引和触发器
虽然在数据库表创建命令句中定义约束的方法简单、方便、安全,但只对特定表有效,不能应用于其他表,只能使用altertable命令修改或删除约束缺乏灵活性。相反,在数据库中创建与表相对独立的规则、索引和触发器对象也可以实现数据完整性,实现更复杂、更完善的数据完整性约束。其主要特点是功能强、效率高、维护方便。
1.2.1定义规则
该规则类似于表定义中的验证约束,用于限制列的值域范围。但它不限于特定的表,可以用于其他表的列或用户定制的数据类型。
例如,定义药物的编码规则Rul-ypbm,可以绑定到其他表中。
1.2.2定义缺省
缺省类似于表定义中的缺省约束,用于设置列的缺省值输入。它不限于特定的表,可以用于其他表的列或用户自定义数据类型。
1.2.3定义索引
索引类似于表定义中的唯一约束,以确保列值的唯一性。此外,它还可以使用聚簇索引和非聚簇索引选项来提高数据检索的性能。
例如,对于门诊收费明细账单,根据收费日期和收费序列号建立非聚集索引,大大提高了数据查询速度,在索引建立前,查询20多万记录,约5分钟,索引建立后,只需4秒左右。
1.2.4定义触发器
触发器是实施复杂完整性约束的有效方法。修改所保护的数据时,自动激活,防止不正确、未经授权或不一致的数据修改。类似于表定义中的参考完整性约束;触发器也可以用来确保相关数据的一致性。它还可以完成一些表定义参考完整性约束无法完成的任务。