友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
喜书网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

SQL 21日自学通(V3.0)(PDF格式)-第12章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






   关系型数据库是最为流行的数据存储模式  它产生于一个名称为 A Relational Model of 



Data  for  Large  Shared  Data  Banks 的论文中  SQL 进而发展为关系型的数据库 对于关系 



型数据库  Dr。 Codd's  定义了 12 条规则使之与其他类型的数据库相区别 



   0  关系型数据库必须通过关系来实现对数据的完全管理 



   1  所有在关系型数据库中的信息均可以在表中以数值的形式加以体现 



   2  在关系型数据库中的每一项数据均可以通过库名        键名和列名来准确指定 



   3  关系型数据库系统必须对空值     未知的和违规的数据  提供系统级的支持        有独特 



     的缺省值  而且具有独立域     {这一段不太清楚} 



   4  活动的  即时的数据联合— — 它的意思就是在数据库中的数据应有逻辑表格的行的 



     形式来表达   并且可以通过数据处理语言来访问 



   5  完善的数据子语句— — 它应该至少支持一种有严格语法规则和功能完善的语言           并 



     且应该支持数据和定义     处理  完整性  权限以及事务等操作 



   6  查看更新规则— — 所有在理论上可以更新的视图可以通过系统操作来更新 



   7  数据库中数据和插入    更新与删除操作— — 该数据库系统不仅要支持数据行的访 



     问  还要支持数据和的插入     更新和删除操作 



   8  数据和物理独立性— — 当数据在物理存储结构上发生变化时应用程序在逻辑上不应 



     受到影响 



   9  数据的逻辑独立性— — 当改变表的结构时应用程序在最大程度上不受影响 



   10 有效性独立 — — 数据库的语言必须有定义数据完整性规则的能力         数据应即时存 



      储在线目录   而且在处理时必须通过这一五一节 



   11 发布的独立性 — — 当数据第一次发布或当它重新发布时应用程序应不受影响 



   12 任何程序不可能使用更低级的语言从而绕过数据库语言的有效性规则定义 



   大多数数据库具有父/子关系      这就是说在父结点中保存有子结点的文件指针          见下 



图 



EMAIL wyhsillypig@163。                            20 


…………………………………………………………Page 21……………………………………………………………

SQL 21  日自学通(V1。0)                                         翻译人   笨猪 



   这种方式有优点也有缺点          它的好处在于它使得数据在磁盘上的物理存储结构变得不 



再重要    编程人员只需存储下一个文件的指针就可以实现对下一个文件的访问                        而且数据 



的添加和删除操作也变得非常容易  可是不同组的信息想要联合为一个新组就变得困难了 



这是因为在这种方式下数据在磁盘上的存储格式不能在数据库建立以后再强制性地改变 



如果需要这样做那就必须重新建立一个数据库结构 



   Codd's 的关系型数据库思想借用的逻辑代数的思想               使得数据的子集与父级之间具有 



平等的地位 



    由于信息可以很自然地组织在不同的表格中  Dr。  Codd           也以这种方式来组织他所提出 



的数据库  在关系模式下  数据被存入类似于表格的结构中                   这种表格由独立的数据元组 



  被称为列或字段       所组合而成     一组数据信息被存储为一行  举例来说             创建一个包括 



雇员内容的关系型数据库  我们可以很容易地从雇员表开始                    而像这样的表在很容易得到 



的  该表中包含有如下信息  姓名           年龄   职业   这三项数据用作雇员表的字段  整个表 



如下图所示 



              姓名               年龄     职业 



              Will    Williams 25     Electrical    Engineer 



              Dave    Davidson 34     Museum    Curator 



              Jan    Janis     42     Chef 



              Bill    Jackson  19     Student 



              Don      DeMarco 32     Game    programmer 



EMAIL wyhsillypig@163。                                         21 


…………………………………………………………Page 22……………………………………………………………

SQL 21  日自学通(V1。0)                                         翻译人   笨猪 



              Becky      Boudreaux 25 Model 



   在这个表中有六行记录          为了从中找到特定的记录          举例来说  Dave    Davidson 用 



户可以望知数据库管理系统在数据库中检索满足条件  姓名=  Dave    Davidson               的记录 



如果数据库管理系统已经检索过了全部的数据  那么                 它将会把满足条件的的姓名          年龄 



职业三项的记录返回给用户          SQL  会通知 DBMS   找什么样的数据       这一检索过程的 SQL 



例句如下 



    SELECT    *    FROM    EMPLOYEE 



   在这里不要刻意去记它的语句           我们在明天将会对它进行更为详细的讨论 



    由于通过明显的关系可以特不同的数据项归结在一起                    比如雇员的姓名和雇员的年 



龄   所以关系性数据库管理系统对如何来描述数据之间的关系给出了相当大的弹性                          通过 



精确的的连接和联合运算  关系型数据库管理系统可以非常迅速地从不同的表中将所需要 



的数据联合     见联合运算图  然后返回给用户或程序              这种联合的特性允许数据库的设计 



者将数据信息存储在不同的表中以减少数据的冗余度 



   右图则反映了相交运算  相交运算地意思就是取出两个或多个库所共有的部分 



     表 A           表 B             表A        表B 

                                       相交运算 

          联合运算 



   这里有一个简单的例子来显示数据是如何进行逻辑处理的  表 1…2  是一个被称为                       报 



告   的表  它的里边有两个字段         姓名和工作 



               Name            Duties 



          Becky Boudreaux Smile 



          Becky Boudreaux Walk 



          Bill Jackson    Study 



          Bill Jackson    Interview for jobs 



   在雇员数据库中的年龄和职业字段在每一个记录中均出现重复是不合适的                          而且随着 



时间的进行     这些冗余的数据将会占用大量的磁盘空间且使得数据库管理系统在检索数据 



EMAIL wyhsillypig@163。                                         22 


…………………………………………………………Page 23……………………………………………………………

SQL 21  日自学通(V1。0)                                翻译人  笨猪 



所耗用的时间增多     可是   如果你将姓名和工作另存到一个名字叫         报告   的库中以后 



你就可以通过联合操作将 报告 与 雇员 通过姓名字段进行联合操作 也就是通知 RDBMS 



将  报告  与  雇员   库中姓名与 Becky  Boudreaux 相同的记录显示出来  其结果将如下 



所示 



           Name            Age Occupation   Duties 



           Becky Boudreaux 25  Model    Smile 



           Becky Boudreaux 25  Model      Walk 



   关于联合运算的详细讲述将在第 6 天的  库的联合         中讲述 



设计数据库的结构 



   在数据库的设计师已经决定了系统的硬件平台和 RDBMS          系统以后  余下事情中最为 



重要的就是如何来设计数据库的结构了          数据库的结构将会影响到是后运行于该库上的应 



用程序的性能  这个决定数据库的分配情况及联合运算的过程称之为标准化 



数据库的前景 



   电脑技术将对今天世办上的商业产生深远的影响            鼠标只要点一下就可以将数据入库 



或对其进行访问  制造商的国外订货单可以立即接受并执行            尽管在 20  年以前信息的交换 



还需要大型机的支持      而办公领域处理事务也仍在采用批处理的方式          要完成某一个查询 



用户需要将需求提交给服务器上的信息管理系统  MIS           给果将会以最快的速度返回给用 



户  尽管经常不是足够快 



   此外  随着关系型数据库模型的发展  有两种技术被引用到了在今天被称为服务器/ 客 



户机的数据库系统当中  第一项技术就是个人电脑           廉价而又易用的应用程序如 Lotus1…2



3 和 WordPerfect  允许员工  或家庭用户  可以建立文档来快速而准确地处理数据      用户也 



会经常升级他们的系统以使其速度更快         巧的是这时的系统的价格却在迅速下跌 



   第二项技术则是局域网的发展        它导致的世界范围内的办公交叉 — — 虽然用户习惯于 



采用终端同主机相连      在今天   一个字处理文档可以存储在本地而被任何连接到网络上的 



电脑访问  然后苹果的 Macintosh 电脑为大家提供了一个友好易用的图形用户界面  使得 



电脑变得物美价廉  此外  他们可以访问远程站点          并从服务器上下传大量的数据 



   在这个飞速发展的时期  一种新型的叫作服务器/客户机的系统诞生了              这种系统的处 



EMAIL wyhsillypig@163。                               23 


…………………………………………………………Page 24……………………………………………………………

SQL 21  日自学通(V1。0)                              翻译人 笨猪 



理过程被分解上了客户机和数据服务器上         新型的应用程序取代了基于主机的应用程序 



这一体系有着相当多的优点 



   l  降低了维护费用 



   l  减轻的网路负荷    处理过程在服务器上和客户机上均有 



   l  多个操作系统可以基于相同了网络协议来共同工作 



   l  本地化的数�
返回目录 上一页 下一页 回到顶部 赞(0) 踩(0)
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!