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

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

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






问与答 



问  如果我有一组事务  其中一个是不成功的                       我是否可以确认其它的事务过程 



答   不可以      必须整组的事务都是成功的才可以 



问  在使用的 MIT  命令以后  我发现我犯了一个错误                          那么我怎样才能更正这个错 



                                                                                 236 


…………………………………………………………Page 237……………………………………………………………

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



误 



答  使用 DELETE   INSERT  或 UPDATE 语句  ROLLBACK 在这时是不行的 



问  在怎个事务结束以后我都必须使用 MIT 命令确认吗 



答   不必  但是在确认没有错误而且在之前没有事务在运行时使用 MIT 会更安全 



校练场 



1   在嵌套的事务中      是否可以使用 ROLLBACK  命令来取消当前事务并回退到上级事务 



   中  为什么 



2   使用保存点是否可以保存事务的一部分             为什么 



3   MIT 命令是否可以单独使用         它一定要嵌套吗 



4   如果你在 MIT 命令后发现的错误          你是否还可以使用 ROLLBACK 命令 



4  在事务中使用保存点是否可以自动地将之前的改动自动地保存 



练习 



1   使用 PERSONAL ORACLE7  的语法来更正下边的语法 



   SQL》 START TRANSACTION INSERT INTO CUSTOMERS VALUES ('SMITH'; 'JOHN') 



   SQL》 MIT 



2   使用 PERSONAL ORACLE7  的语法来更正下边的语法 



   SQL》 SET TRANSACTION 



             UPDATE  BALANCES  SET  CURR_BAL  =  25000 



   SQL》 MIT 



3   使用 PERSONAL ORACLE7  的语法来更正下边的语法 



   SQL》 SET TRANSACTION 



             INSERT  INTO  BALANCES  VALUES    ('567。34';  '230。00';  '8') 



   SQL》 ROLLBACK 



                                                                  237 


…………………………………………………………Page 238……………………………………………………………

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



第 12 天    数据库安全 



   今天我们来讨论一下数据库的安全问题      我们已经很清楚地看到不同的 SQL 语句可以 



使我们具有管理关系型数据库系统的能力       与我们到今天为止所学习的其它主题一样        一 



个数据库管理系统是如何在不同的产品中实现安全的呢         对于这个问题我们今天将以流行 



的 ORACLE 7 数据库系统为例 到今天的结束时我们将具有以下能力 



   l  创建用户 



   l  更改密码 



   l  创建角色 



   l  为安全的目的而使用视图 



   l  在视图中使用同义词 



前提    数据库管理员 



   安全问题在数据库的设计过程中常常会被忽略  许多计算机工作人员在进入计算机领 



域时有计算机的编程知识或硬件知识  并且他们也会将精力注重于这一方面           例如  如果 



你的老板要求你开展一个新的项目      而这个项目很明显地需要一个关系型的数据库时         那 



你第一步想要做的工作是什么      在确定的相应的硬件和软件平台以后  你也许会开始设计 



项目中的基本的数据库结构了  这一阶段会分给许多人去做         其中一些人是图形用户界面 



设计者  另一些底层组件的设计者     也许你在读过本书以后会要求编写用于提供给客户应 



用程序所使用查询的 SQL 代码   而与这项任务随之而来的是你可能会成为一个数据库的管 



理和维护人员 



   在很多时候   当我们在真正实施这个项目时我们需要考虑或计划到一点         那就是当众 



多的用户通过广域网使用你的应用程序时会有什么情况发生  根据今天个人计算机的强大 



软件和硬件以及微软的开放数据库联接  ODBC      任何连接于网络的用户都会有办法得到 



你的数据库    我们不想在当我们公司的计算机准备联入 internet 时或类似的大型网络时有 



麻烦出现  那么我们应该如何面对这一情况 



   非常幸运  软件供应商已经为你处理安全问题提供了许多的工具  每一个新的网络操 



作系统都会面对着比它的上一代更为严格的安全性要求         此外  许多的数据库供应商也都 



                                                 238 


…………………………………………………………Page 239……………………………………………………………

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



在它们的数据库系统提供了不同程度的        与你的网络操作系统安全相独立的安全性  所以 



想在不同的产品中实现安全性的方法是非常广泛的 



流行的数据库产品与安全 



   就像你所知道的那样     许多数据库管理系统为你的生意而存在着商业竞争         在一个项 



目的开发过程中  你可能会只购买少数的许可证用以测试  开发以及其它的目的  但是 



你的产品的实际许可证要求可能会是成百上千个         此外   当你决定采用某一种数据库管理 



系统时  你可能会在这个产品中渡过几年的时间        所以   当你在检查下边的数据库管理系 



统时头脑中要有下边的概念 



   MicroSoft  FoxPro 数据库管理系统是一个非常强大的基于单用户环境的数据库管理系 



统  它只使用了有限的 SQL 标准的子集  在该数据库系统中没有提供安全性措施          同时 



它使用了 Xbase 的文件格式  每一个文件中都只有一个表     索引文件存储于单独的表中 



   MicroSoft  Access  数据库管理系统提供了更多的 SQL  实现  尽管它内部已经包括了基 



本的安全系统    但它仍然是一个基于 PC  平台的数据库管理系统      该数据库系统允许你创 



建查询并把它们存储在数据库之中       此外  全部的数据库及其对象均存在于同一个文件之 



中 



   Oracle  7 数据库管理系统支持全部的标准的 SQL 此外  它还对标准的 SQL 进行了称 



之为 PL*SQL 的扩充  它拥有全部的安全特性    包括在数据库中创建角色以及为数据库对 



象分配权限的能力 



   Sybase  SQL 拥有与 Oracle  7 类似的能力与特性 它也提供了极大范围内的安全特性 



它对 SQL 的扩充被称为 Transact…SQL 



   对这些产品进行描述的目的是想说明并不是所有的软件都适用于每一个应用程序              如 



果你的程序用于商业目的  那么你的选择将会受到限制         成本与性能的因素是非常重要的 



然而  如果没有足够的安全手段      那么任何在创建数据库之初时的费用节约都将被安全问 



题吃掉 



如何让一个数据库变得安全 



   到现在为止你还没有因为数据库的安全问题而不高兴          但是否你曾经因为你不想让其 



它的用户登录进入你的数据库系统造成破坏而不得不非常小心的登录  如果有一天早上你 



                                                   239 


…………………………………………………………Page 240……………………………………………………………

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



登录进行系统后发现你辛苦努力的成果都被人删除了你的反应会怎样                          还记得 DROP 



DATABASE 语句是没有记录的吗           我们来学习一个流行的数据库管理系统  
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!