基于client-server数据完整性约束的实现技术

基于client-server数据完整性约束的实现技术

ID:23701906

大小:59.00 KB

页数:7页

时间:2018-11-09

基于client-server数据完整性约束的实现技术_第1页
基于client-server数据完整性约束的实现技术_第2页
基于client-server数据完整性约束的实现技术_第3页
基于client-server数据完整性约束的实现技术_第4页
基于client-server数据完整性约束的实现技术_第5页
资源描述:

《基于client-server数据完整性约束的实现技术》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于Client/Server数据完整性约束的实现技术基于Client/Server数据完整性约束的实现技术中共广州市委办公厅自动化中心汪胜广东省财贸管理干部学院计算机系彭湘凯广州工程总承包集团有限公司时亚弘摘要:本论文主要讨论基于Client/Server数据完整性约束及其如何实施企业业务规则,并以SQLServer和PoaryKey)。一个表中每行的主键必须确实含有一个值。一个表只能含有一个主键,如需要从其它列中除去重复的值,可以将一个或一组非主键列指定为一个候选键或唯一值键。引用完整性(ReferenceIntegrity)定义了一个关系数据库中不同的列和不

2、同的表之间的关系(主键与外键)。要求一列或一组列中的值必须要与相关的一列或一组列中的值相匹配。从属的一列或一组列称之为外键(ForEignKey)。被引用的列或一组列称之为父键,父键必须是一个主键或唯一键。外键属于子表或明细表,父键属于父表或主表。若父键和外键属于同一表,则称之为自引用完整性。子表某行的外键必须与主表的主键相匹配,只要依赖于某主键的外键仍存在,主表中包含该主键的行就不能删除。由于每个公司的数据库都有自己独特的业务规则集,所以系统必须有一种方式来实现定制的业务规则即定制的数据完整性约束。定制的数据完整性约束可由如下几种方法实施。一种最原始的方法是将将

3、每一个完整性约束编入要访问数据库的每个应用程序中,缺点是在每个相关的数据库应用程序中,开发者都要对相同的完整性规则进行编码、测试和排错。若某一规则变动,所有相关的应用程序都得改动。应用程序须向DBServer请求大量的数据,以执行该应用程序内部的数据完整性规则检查,这将阻塞网络。因而这是一种耗时、低性能的方法。用户定义的数据类型(User-definedDataType)是由标准数据类型导出的新数据类型,它比标准的数据类型更准确地限定了数据输入的范围。约束(Check)用于限制列的值域,在数据类型限制的基础上对输入的数据进一步进行限制。通过逻辑表达式来定义列的有效

4、值。缺省(Default)定义了一个数值,当用户向数据表插入数据时,若某个域未给定值,系统自动将定义在该域上的缺省作为输入值,保证数据库数据的合理性。规则(Rule)是一个用来绑定域或用户定义数据类型的数据库对象,规则说明了哪些数据可以输入到域中。任何时刻,用户输入或修改数据(INSERT或UPDATE),DBMS都将检查该数据是否违反绑定在域上的规则。存储过程(StoredProcedure)是由编译过的SQL语句、控制流语句、变量说明和赋值运算等组成的集合,由开发者创建并存储在数据字典(大部分DBMS叫系统表)中。我们可以通过存储过程中的语句来定义企业业务规则

5、,特别对于复杂的表与表之间的饿关系,用存储过程来实现将变得相当容易。触发器(Trigger)也是一个存储过程,该过程在插入、修改和删除等操作事前或事后由DBS自动激发(执行)。经常用于实现逻辑上相关的数据表之间的数据完整性和一致性。触发器非常适合于实施企业规则,如果某个输入违反了其中的某个企业规则,触发器可以显示相应错误并中止正在执行的数据库动作。二、Client/Server模型下实施企业规则的准则在Client/Server系统中,前端和后端都提供数据完整性约束。在前端可进行域完整性约束,并能定制业务规则。在后端几乎可以实现上述所列的所有的完整性约束。E.F.

6、Codd在衡量关系数据库的十二条准则之第十条指出关系完整性约束条件必须用数据子语言定义并存储在数据字典中,而不是在应用程序中。这样,当完整性约束改变时,只要修改数据字典即可,完整性的改变一般不会在逻辑上影响应用程序的活动。前端应用程序也可以进行某些完整性检查并实施企业规则,但是这些做法不能用于取代在数据库里的完整性约束定义。如果数据库设计者完全正确地说明了所有的约束和企业规则,则任何违反约束和规则的数据操作都会引起数据库错误。前端应用程序的任务是尽量减少产生数据库错误的可能性,只有从这个意义上说,前端应用程序才应当包含完整性检查和实施事务规则。当数据库没有完整性约

7、束时,前端应用程序必须实施企业规则。由此我们得出在实施企业规则时须遵循如下准则:·集中在数据库中实施企业规则·减少对数据库请求的次数,尽量减少返回结果我们在实施企业规则时,应将所有的企业规则定义在数据字典中,应用程序在向数据库提交SQL语句之前尽量减少由用户引起数据库错误的可能性,使应用程序运行顺畅,对用户友好,开销少。三、PoChanged事件的Script程序里对输入数据进行进一步的有效性验证,若输入数据不能通过在ItemChanged事件里所设置的检查,则返回动作码1,拒绝输入数据。◆当应用程序调用函数Update()更新数据库之前,触发UpdateStar

8、t事件。该

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。