第18卷第3期江西电力职业技术学院学报v01.18,No.32005年9月JoumalofJiangxiVocationalandTechnicalCo¨egeofElectricitysep.2005
图书管理系统中数据完整性的实现
江霞,郭树蕻
(东华理工学院,江西南昌330013)
摘要:数据完整性是数据库应用系统评价中的一个重要指标。以图书管理系统为例阐述了实现数据完整性的必要性和实现方法。该系统是以vB为编程工具,以sQLserver作为数据库管理系统的。
关键词:数据完整性;图书管理系统;Ⅶ;sQLseⅣer
中图分类号:G250.74文献标识码:B文章编号:1673—0097(2005)03—0096一(02)
l数据完整性约束简介(2)数据表设计,由E—R图可以转换得到下列三个
数据表:
随着网络技术和数据库技术的发展,数据库系统的读者信息表:reader(读者编号m0,读者姓名m帅e,办工作模式已经有单机模式、主从式、分布式和客户,服务证日期rdate)
器四种方式供用户选择,数据库也由独享变为共享。在多图书信息表:b00k(图书编号bno,书籍名称bn砌e,作用户操作过程中我们最关心的是数据的正确性,而数据
完整性约束就数据的正确、合理进行了规范。在实际系统者姓名bautllor,是否借出byn)
中,一般将数据完整性约束分为标准的数据完整性约束
和定制的数据完整性约束。标准的数据完整性约束是日期‰date,还书日期retumdate,超出天数overdays,罚借阅信息表:borrow(读者编号mo,图书编号bn0,借书
DBS已经实现的内部规则,包括实体完整性、域完整性和款金额money)
引用完整性。(3)分析数据完整性问题。
(1)实体完整性(E以tyInte画啪保证一个表中的每一①实体完整性:每个表须指定一个主键,其值必须唯行必须是唯一的(元组的唯一性)。为保证实体完整性,需一、非空。
指定一个表中的一列或一组列作为它的主键(跏maly②域完整性:读者编号为6位字符(其他字段的取值Key)。主键值须非空且唯一。范围视情况而定,此处仅举例说明)。
(2)域完整性(FieldInte咖ty)保证一个数据库不包含③引用完整性:借阅情况表中读者编号mo和图书编无意义的或不合理的值,即保证表的某一列的任何值是号bno分别是读者信息表reader和图书信息表b00k中的该列域(即合法的数据集合)的成员。方法是限制列的数据主键,因此都是外键。若麟Ider表中mo字段更新,borrow类型、精度、范围、格式和长度等。表中的mo字段也随之变化,bno同理。
(3)引用完整性(ReferenceInte画动定义了一个关系
数据库中不同的列和不同的表之间的关系(主键与外键)。3数据完整性的实现
要求一列或一组列中的值必须要与相关的一列或一组列
中的值相匹配。我们习惯于将用户所能看到的操作界面称为前台,
而把数据表的创建和前台操作对数据库的访问称为后
2图书管理系统中亟待解决的数据完整性问题台。实体完整性和引用完整性可通过定义数据表的主键
约束和外键约束来实现;域完整性可在用户进行前台操
(1)系统概念模型设计,根据用户的需求,该系统可分作时加入判断语句和适时的提示语信息,确保每次写入为三个子模块:读者信息管理模块、图书信息管理模块和图的数据都在取值范围内。
书借阅管理模块。经分析可得到系统E—R图'女Ⅱ图l所示:(1)创建数据表时实现实体、引用完整性。该系统采
用MssQLsen,er创建管理数据库,下面是创建数据库及
数据表的T-sQL语句,读者可在查询分析器上运行。
createdatab鹊eb00kmanage“半
创建数据库b00km锄ager水,
go
usEb00km锄ager严打开数据库bookm强ager水,
90
cREATE’rABLEreader产创建读者信息表r∞der吖
图1系统E—R图(movarch缸10)constraintclprimarykey,产mo为
收稿日期:2005—03—28
作者简介:江霞(1979一),女,江西都昌人.助教.
第3期江霞,郭树蕻:图书管理系统中数据完整性的实现
表的主键枣,n姗e0verdaysi咄
var|char(10),fimInoney
rdatedatetimec傩stmintc45primrykey(Im,b∞,bon_owdate)p属性
一1
)组合作为主键},
90)
cREAl【ETABLEb00k产创建图书信息表b00k木,(2)域完整性的实现。图书馆工作人员添加读者信息(bnovarchar(10)co璐traintc2pdmarykey,严bno界面如图2:
为表的主键木,“确定”按钮的cIick事件部分代码如下,使得读者信息表
b眦mevarcha邸o),各字段值在取值范围内。
b肌tIIorvarcha“10),PrivateSubcmdAdd—ChckO
b”bitDimstrNumbe}A占String
)DimstrN锄e灿Strillg
go
cREAfIETABLE咖p创建借阅信息表strNumber=t妣ReadedD.TextstrN姗e=L‘tReaderN枷e.Text
bormw吖ⅡstrNumber=…’orstrN锄e=…’而朗
c3Ms妒0x”读者编号、读者姓名不能为空”,vbCritical,”
删山如0),产定义外键・,(mov呲h盯(10)∞璐姚intfb商印keyreferences
错误”
bnovarch盯(10)co啮删ntc4forei印key陀fe砌1cestxtReadedD.Text=…’
b∞ko)n0),严定义外键|‘,.txtReaderN锄e.Text=…’
bon删datedatetime。E】【itSub
r℃tunndatedatetime.Elseiflen(trim(strNumber))<>6then
MsgB呶”读者编号为6位字符”,vbcritic吐”错误”
txtReadedD.Text=…。
txtReaderN姗e.’IIext=…’
E)【itSub
EndIf
EndSub
参考文献:
[1]施伯乐.数据库教程[M].北京:电子工业出版社,2004-
[2]萨师暄.数据库系统概论(第3版)[M]曲京:高等教育
出版社,2001.
图2添加读者信息界面图13]刘炳文.VisualB鹊ic程序设计[M].北京:机械工业出版
社。20()4.
hIlplementationoftheDateIntegrityinBookManagementSystem
征沁t饥in口胁t如ule矿死clI"lo哳№^吣33(m2,饿叫JIANGXia,GUOShu“ong
Abstract:Asevaluatingadatab踮eapplicationsystem,dataintegdtyisaveryimponantfactortoconsider.Inthisthesis,Ihavestateddata:ntegrity’snecessityandhowtomakeitcometruebyusingabookmanagementsystemas8nex姗ple.Thesystemisprogrammedbyvisualb8sicanditsDBMSisSQLSenrer.
Keywords:dataintegrity;b00km蛐agementsystem;VB;SQL
senrer
图书管理系统中数据完整性的实现作者:
作者单位:
刊名:
英文刊名:
年,卷(期):江霞, 郭树蕻, JIANG Xia, GUO Shu-hong东华理工学院,江西,南昌,330013江西电力职业技术学院学报JOURNAL OF JIANGXI VOCATIONAL AND TECHNICAL COLLEGE OF ELECTRICITY2005,18(3)
参考文献(3条)
1. 施伯乐 数据库教程 2004
2. 萨师暄 数据库系统概论 2001
3. 刘炳文 Visual Basic程序设计 2004
本文链接:http://d.wanfangdata.com.cn/Periodical_jxdlzgdxxb200503045.aspx