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

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

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






问  静态的 SQL 比动态的 SQL 灵活性差  尽管它的性能要比动态的好  对不对 



练习 



1  如果你没有使用 SYBASE 或 MICROSOFT  的 SQL  SERVER 那么请你比较一个你的产 



  品对 SQL 的扩展与今天所讲的有何不同 



2  写一组 SQL 语句  它可以对一些已知的条件进行检测        如果条件为真  执行一些操作 



  否则的话执行另一些操作 



                                                       431 


…………………………………………………………Page 432……………………………………………………………

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



第 20 天     SQL*PLUS 



目标 



   今天你将会学习 SQL*PLUS   这种 SQL 是针对 ORACLE  的 RDBMS 的  在今天的结 



束  你将会明白 SQL*PLUS  的下述内容 



   l  如何使用 SQL*PLUS  的缓存 



   l  如何格式化报表 



   l  如何操作日期 



   l  如何创建交互式查询 



   l  如何构建高级报表 



   l  如何使用强大的 DECODE 函数 



简介 



   我们介绍 SQL*PLUS 的原因是由于 ORACLE  数据库在关系数据库市场中所处的优势 



地位以及 SQL*PLUS  为用户提供的强大功能及灵活性          SQL*PLUS 在许多方面与 



TRANSACT…SQL 类似 见第 19 天  TRANSACT…SQL  简介 它们都实现了 ANSI  标准 



的 SQL 它仍是所有 SQL 解释器的骨架     的大部能力 



   SQL*PLUS 命令可以增强 SQL 会话能力并对从数据库返回的查询的结果进行格式上的 



增强  它也可以像一个专业化的报表生成器对报表进行格式化            SQL*PLUS 对 ANSI 标准 



的 SQL 和 PL/SQL 进行了补充以帮助关系型数据库程序员们取得满意的数据格式 



SQL*PLUS 缓存 



   SQL*PLUS 缓存是为你特定的 SQL 会话所指定的命令存储区域       这些命令包括大多数 



最近执行过的命令以及你用于定制 SQL 会话的如格式化命令和变量赋值之类的命令               缓存 



就像随机存储器一样  这里给出了一些对缓存的最常用的命令 



   l  LIST line_number — — 可以列出缓存中的命令并可以通过行号将它指定为当前行 



                                                      432 


…………………………………………………………Page 433……………………………………………………………

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



    l   CHANGE/old_value/new_value — — 将缓存当前行的旧数值改为新数值 



    l   APPEND text — — 向缓存所在的当前行中追加文本 



    l   DEL — — 将缓存中的当前行删除 



    l   SAVE newfile — — 将缓存中的 SQL 语句保存到文件中 



    l   GET filename — — 将某文件中的内容送到缓存中 



    l   / — — 运行缓存中的语句 



    让我们用一个简单的 SQL 语句来开始 



输入 



    SQL》 select * from products where unit_cost 》 25; 



输出 



      PRO         PRODUCT_NAME                       UNIT_COST 



      P01        MICKEY MOUSE LAMP                   29。95 



      P06        SQL MAND REFERENCE               29。99 



      P07         BLACK  LEATHER  BRIEFCASE          99。99 



    LIST 命令可以列出在缓存中最近执行过的命令                     输出是非常简单的 



    SQL》 list 



        1    select  * 



        2    from  products 



      3* where unit_cost 》 25 



分析 



    注意  在每一行的前边都有一个数字                   这个数字对于缓存来说非常重要                 它就像一个 



指针一样可以让你通过 SQL*PLUS 来对指定行进行修改                       SQL*Plus  buffer 不是全屏幕编辑 



的  当你按下回车后  你不能使用游标来回到上一行                         如下例所示 



输入 



    SQL》 select * 



        2    from  products 



        3    where  unit_cost  》  25 



      4   / 



注   与 SQL 命令一样        你在 SQL*PLUS  中既可以用大写字符也可以用小写字符 



                                                                               433 


…………………………………………………………Page 434……………………………………………………………

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



技巧    SQL*PLUS  中的大部分命令都可以缩写  例如 LIST 可以缩写为 L 



你可以在 L 后边加上一个数字来跳转到缓存中的指定行 



输入 



    SQL》 l3 



      3* where unit_cost 》 25 



分析 



    注意 3  后边有一个星号        星号表明了当前的行号  在今天的例子中你应该注意星号 



如果一行被标为*号  那么你就可以对它进行编辑 



    由于你知道了当前的行是第 3 行  你可以对它进行随意的改变  CHANGE 的语法格式 



如下 



语法 



    CHANGE/old_value/new_value    或 C/old_value/new_value 



输入 



    SQL》 c/》/《 



输出 



     3* where unit_cost 《 25 



输入    : 



    SQL》 l 



输出 



        1    select  * 



        2    from  products 



      3* where unit_cost 《 25 



分析 



    在第 3  行中的小于号已经被改成大于号了               注意在改变以后的新行会被显示             如果你 



使用 LIST 命令或 L     你就可以看到完整的语句           现在我们来运行一下语句 



输入 



    SQL》 / 



输出 



      PRO      PRODUCT_NAME                UNIT_COST 



                                                                      434 


…………………………………………………………Page 435……………………………………………………………

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



      P02       NO 2 PENCILS 20 PACK           1。99 



      P03        COFFEE  MUG                     6。95 



      P04       FAR SIDE CALENDAR                10。5 



      P05        NATURE  CALENDAR                12。99 



分析 



    在 SQL》后边的正斜线的意思就是运行处于缓冲区中的任何语句 



输入 



    SQL》L 



输出 



    1    select  * 



    2    from  products 



    3* where unit_cost 《 25 



    现在  你可以通常在 SQL》后边输入行号和相应的文字来增加对应行中的内容                                       当你 



增加完以后        你就得到了一个完整的语句组                如下例 



输入 



    SQL》 4 order by unit_cost 



    SQL》 1 



输出 



        1    select  * 



        2    from  products 



        3    where  unit_cost  《  25 



      4* order by unit_cost 



分析 



    如果想删除一行比增加一行还容易  例如你输入 del4  就删除了缓冲区中的第 4  行  现 



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