五关系数据库设计初步.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
五关系数据库设计初步

关系数据库设计初步 关系数据库的设计 数据库设计过程框架 数据库建模 ODL(Object Definition Language 对象定义语言)模型 E/R(entity-relationship 实体关系)模型 ODL简介 ODL是一种以面向对象形式来描述数据库结构的标准语言 ODL示例 Interface movie{ Attribute string title; Attribute integer year; Attribute integer length Attribute enum File{color,blackAndWhite} filmtype; Relationship setStar stars }; 实体关系(E/R)模型 是一种可视化的数据库建模方法,由美籍华人Peter Chen在1976年提出,是目前应用最广泛的语义数据模型 E/R模型的基本要素: 实体(Entity): 与面向对象中“类”的概念类似 属性 (Attributes):与面向对象中“属性”的概念类似 关系(Relationship):一个实体与其它实体(一个或多个)相关联的属性集合 (E/R)模型表示方法 关系的表示方法 关系的多重性(multiplicity) 复合关系 关系的角色(Role) 关系的属性 多路(Multiway)关系向双路(Binary)关系的转换 E/R模型中的继承关系 键 E/R模型中的约束(续I) E/R模型中的约束(续Ⅱ) 数据控制功能 数据库系统大都提供了非常完善的安全机制,一般采用基于角色的多级授权安全机制(把用户分为不同的类别。如:管理员、数据库备份管理员、数据库用户管理员、普通用户等。不同数据库系统的用户角色不完全相同),所有对数据库的操作都需要更高一级的授权,任何级别的用户在使用数据库系统时,除了必须拥有的授权外,还必须提供正确的用户名称和用户口令。 事务处理 事务,就是一个完整的活动序列:它包含一组操作,这些操作或者全部成功地执行,或者都不执行并恢复到执行前的状态。 事务处理的四个特点(即所谓的ACID): 1.原子性(Atomicity):事务是一个活动的逻辑单元,该逻辑单元的工作要么全部被提交,要么全部被取消。 2.一致性(Consistency):事务是一个完整的逻辑单元,能够把共享资源(比如一个数据库的表)从一个有效状态变迁到另一个有效状态。 3.独立性(Isolation):事务在对共享资源的修改被提交之前,在该事务之外是看不到的。 4.持久性(Durability):事务对共享资源的修改即使是在系统或存储介质出现故障时,也能被保存下来。 事务处理 关系数据库系统通过日志实现了事务处理 在关系数据库系统中,一般把事务分为两类:隐含事务和显示事务。系统将自动提交隐含事务,而对于显示事务,用户必须使用事务提交命令(一般是COMMIT)显示地完成事务的提交。在执行CREATE、DROP、GRANT、REVOKE等命令时,系统将自动完成事务的提交。 撤消一个尚未提交的事务,可以使用事务回滚命令:ROLLBACK。 触发器 在数据库系统中,触发器(Trigger)也是一种基于事件机制的事件处理过程(就是SQL语句序列),它由更新、插入、删除等操作激发, 触发器是建立在表一级上的,它与指定的数据修改相对应,一般每个表最多可以建立三个触发器,分别对应于:INSERT、DELETE和UPDATE。触发器的主要优点是:当对触发器所保护的表中数据进行操作时,触发器都能被自动地被激活。这样就可以使用触发器来对这些数据实施完整性检查。 触发器 定义触发器的语法格式为: CREATE TRIGGER [触发器所有者名.] 触发器名 ON [表所有者名.] 表名 FOR [INSERT,UPDATE,DELETE] AS SQL语句序列 注意:只有表所有者才有权建立触发器,因此,表所有者和触发器所有者的名字是相同的。 例:为了维护两个关系:选修课程表C、学生选修课程表SC间的完整性,设表C的主键课程号CNO是表SC的外键。则可以定义一个触发器,作用是每当删除修课表C中的某门课程时,都自动地删除学生修课表中选修了此门课程的所有学生的元组。则触发器的代码为: CREATE TRIGGER del_trigger ON C FOR DELETE AS DELETE FROM SC WHERE SC.CNO = deleted.CNO 存储过程 存储过程(Procedure):由SQL语句和流程控制语句组成的函数。存储过程包括系统存储过程和用户定义的存储过程两类。所有的存储过程均被保存在服务器上,且在服务器端运行。它们被作为数据库的一部

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档