首页 百科知识 十二条法则

十二条法则

时间:2023-10-09 百科知识 版权反馈
【摘要】:法则4:一个活跃的、在线数据字典应作为关系型表被存储,并且该字典应该可以通过常规的数据存取语言访问。如果数据字典的任何部分贮存在操作系统文件里,就违反了这条规则。法则5:统一的数据子语言准则。法则9:逻辑数据的独立性。完整性规则应该贮存在数据字典中。那么,数据库系统管理员就有责任确保数据的安全性和完整性,如果瞬间出现问题,应该立即恢复。

1.6 Codd十二条法则

DBMS应该遵循Codd提出的十二条法则,才能被分类到完全关系型。

法则l:信息法则。关系型:DBMS的所有信息都应在逻辑一级上用一种方法即表中的值显式地表示。

法则2:授权存取法则。每一个数据项必须通过一个“表名+行主键+列名”的组合形式访问。例如,如果你能用数组或指针访问一个列,就违反这条规则。

法则3:必须以一致的方式使用空值。如果由于缺少数字值,空值(Null)被当做0来处理,或者由于缺少字符值而被当做一个空格处理,那么它就违反了这条规则。空值仅仅是指缺少数据而且没有任何数值。如果缺少的数据需要值,软件提供商通常提供使用缺省值的能力满足这一目的。

法则4:一个活跃的、在线数据字典应作为关系型表被存储,并且该字典应该可以通过常规的数据存取语言访问。如果数据字典的任何部分贮存在操作系统文件里,就违反了这条规则。

法则5:统一的数据子语言准则。一个关系系统可以具有几种语言和多种终端使用方式(如表格填空方式、命令方式等)。但必须有一种语言,它的语句可以表示为具有严格语法规定的字符串,并能全面地支持以下功能:

(1)数据定义、视图定义。

(2)数据操作(交互式或程序式)。

(3)完整性约束。

(4)授权。

(5)事务处理功能(事务开始、提交、回滚)。

法则6:所有能被更新的视图应当是可更新的。例如,如果你能将三个表联结起来,作为一个视图的基础,但却不能更新这个视图,则违反本规则。

法则7:必须有集合级的插入、更新和删除。目前,大多数RDBMS提供商都在某种程度上提供了这种功能。

法则8:物理数据的独立性。应用不能依赖于物理结构,如果一个支持某表的文件从一张盘移动到其他盘上或重新命名,不应该对应用产生影响。

法则9:逻辑数据的独立性。应用不应依赖于逻辑结构。如果一个表必须被分成两个部分,那么应该提供一个视图,把两段连接在一起,以便不会对应用产生影响。

法则10:完整性的独立性。完整性规则应该贮存在数据字典中。主键约束、外键约束、检查约束、触发器等都应该贮存在数据字典中。

法则11:分布独立性。一个数据库即使被分布,也应该能继续工作。这是规则8的一个扩展,一个数据库不仅能在一个系统(本地地)分布,也能在通过系统的网络(远程地)分布。

法则12:非破坏性法则。如果允许低级存取,一定不能绕过安全性或完整性规则,这些规则是常规的数据存取语言所遵守的,例如,一个备份或载人工具不能绕过验证、约束和锁来备份或载人数据。然而,软件供应商出于速度的原因,通常提供这些功能。那么,数据库系统管理员就有责任确保数据的安全性和完整性,如果瞬间出现问题,应该立即恢复。

如果一个DBMS能满足本章中讨论的所有基本原则(两个定义、六个属性、关系型操作以及两个完整性规则)和这十二条法则,那么它就可以被当做一个RDBMS。E·F·Codd用他的法则总结了这一切:“对于一个有资格成为RDBMS的系统来说,该系统必须排他地使用它的关系型工具来管理数据库。”法则的一个推论是:任何声称是关系型的DBMS必须在关系这个级别上支持数据的插入、修改和删除(即一次多个记录的操作级别)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈