友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
富士康小说网 返回本书目录 加入书签 我的书架 我的书签 TXT全本下载 『收藏到我的浏览器』

SQL 21日自学通(V3.0)(PDF格式)-第56部分

快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!





以后  你将进入一个全屏幕的编辑环境  它与 WINDOWS  的记事本非常相似  你会发现你 



它来修改文件要比对缓冲区进行编辑容易得多  特别是当你在处理又大又复杂的语句时 



下图给出了 EDIT 命令的例子 



输入 



   SQL》 edit query1。sql 



运行一个文件 



   现在你已经知道了如何创建和编辑一个文件  如果你想执行它是非常简单的  你可以 



使用下边的格式 



语法 



   START filename 或 STA filename 或@filename 



技巧  命令对大小写是不敏感的 



输入 



   SQL》 start query1。sql 



输出 



      PRO    PRODUCT_NAME              UNIT_COST 



      P02    NO 2 PENCILS 20 PACK    1。99 



                                                               441 


…………………………………………………………Page 442……………………………………………………………

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



        P03    COFFEE MUG                    6。95 



        P04    FAR SIDE CALENDAR             10。5 



        P05    NATURE CALENDAR               12。99 



注  在 SQL*PLUS   中你想启动一个文件时不必一定要输入它的扩展名  数据库默认你要执 



   行的文件是有扩展名的           与此类似      当你在 SQL 提示符下创建编辑一个文件如 SAVE 



   GET   EDIT  你也不必指定文件的扩展名 



输入 



    SQL》 @query1 



输出 



    PRO        PRODUCT_NAME                  UNIT_COST 



    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》 run query1 



输出 



    1    select  * 



    2    from  products 



    3* where unit_cost 《 25 



      PRO      PRODUCT_NAME                  UNIT_COST 



      P02      NO 2 PENCILS 20 PACK        1。99 



      P03      COFFEE MUG                    6。95 



      P04      FAR SIDE CALENDAR             10。5 



      P05      NATURE CALENDAR               12。99 



注意    当你使用 RUN 来运行查询时  语句是会回显到屏幕上的 



查询的假脱机输出 



    从屏幕上查询输出的结果是非常方便的                  但是如果你想把结果保存下来以供将来参考 



或是想把它打印出来的话            SPOOL  命令可以让你把输出保存到一个指定的文件中                    如果这 



                                                                         442 


…………………………………………………………Page 443……………………………………………………………

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



个文件不存在        它将会被创建         如果它存在  它将会被覆盖             见下图 



输入 



    SQL》 spool prod。lst 



    SQL》 select * 



        2    from  products; 



输出 



      PRO       PRODUCT_NAME                         UNIT_COST 



      P01       MICKEY MOUSE LAMP                    29。95 



      P02       NO 2 PENCILS 20 PACK               1。99 



      P03       COFFEE MUG                           6。95 



      P04       FAR SIDE CALENDAR                    10。5 



      P05       NATURE CALENDAR                      12。99 



      P06       SQL MAND REFERENCE                29。99 



      P07       BLACK LEATHER BRIEFCASE              99。99 



输入 



    SQL》 spool off 



    SQL》 edit prod。lst 



    在下图中的输出是一个 SQL*PLUS  文件  你必须使用 SPOOL  OFF 才能停止向一个文 



件中的重定向输出           当你退出 SQL*PLUS      时  SPOOL  OFF  会自动执行  但是如果你没有 



退出 SQL*PLUS     那么重定向将一直持续到你使用 SPOOL OFF 时为止 



                                                                              443 


…………………………………………………………Page 444……………………………………………………………

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



SET 命令 



    在 ORACLE 的 SQL*PLUS  中 SET  命令可以改变对会话的设置                通过使用这些命令 



你可以定制你的工作环境并使它的输出更符合你的要求                         你可以通过 SET  命令来把相应的 



选项打开和关闭 



    为了演示 SET 命令是如何工作的             可以简单地执行一下 SELECT 命令 



输入 



    SQL》 select * 



        2    from  products; 



输出 



    PRO         PRODUCT_NAME                     UNIT_COST 



    P01        MICKEY MOUSE LAMP                 29。95 



    P02        NO 2 PENCILS 20 PACK            1。99 



    P03         COFFEE  MUG                      6。95 



    P04        FAR SIDE CALENDAR                 10。5 



    P05         NATURE  CALENDAR                 12。99 



    P06        SQL MAND REFERENCE             29。99 



    P07         BLACK  LEATHER  BRIEFCASE        99。99 



7 rows selected。 



分析 



    输出的最后一行为 



    7 rows selected。 



    它被称为 FEEDBACK        它可以通过 SQL       的设置来更改  默认的设置为 ON              如果你 



想更改  你可以输入 



    SET FEEDBACK ON 



    当运行 SELECT 语句时        假如你不想看到回显           如下例 



输入 



    SQL》 set feedback off 



    SQL》 select * 



        2    from  products; 



输出 



                                                                           444 


…………………………………………………………Page 445……………………………………………………………

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



         PRO       PRODUCT_NAME                       UNIT_COST 



         P01      MICKEY MOUSE LAMP                   29。95 



         P02      NO 2 PENCILS 20 PACK              1。99 



         P03       COFFEE  MUG                        6。95 



         P04      FAR SIDE CALENDAR                   10。5 



         P05       NATURE  CALENDAR                   12。99 



         P06      SQL MAND REFERENCE               29。99 



         P07       BLACK  LEATHER  BRIEFCASE          99。99 



分析 



    在输出中这一列已经被去除了                   只有事实上的数据被显示 



    你可以有大量的设置来控制你的输出的显示方式                             其中一个选项为 LINESIZE           可以让 



你指定每一行的输出长度  如果行长小的时候你的输出换行可能性就大                                        如果行长超过了 



默认的 80  以后增加行长可能是必要的  如果你使用的是宽行打印纸  通过增加行的宽度可 



以让你的打印输出更加漂亮  下边的例子显示了 LINESIZE 的用法 



输入 



     SQL》 set linesize 40 



     SQL》 / 



输出 



    P01 MICKEY MOUSE LAMP 



      29。95 



    P02 NO 2 PENCILS 20 PACK 



              1。99 



    P03 COFFEE MUG 



              6。95 



    P04 FAR SIDE CALENDAR 



              10。5 



    P05 NATURE CALENDAR 



            12。99 



    P06 SQL MAND REFERENCE 



            29。99 



    P07 BLACK LEATHER BRIEFCASE 



                                                                                     445 


…………………………………………………………Page 446……………………………………………………………

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



            99。99 



分析 



    你也可以通过设置 PAPERSIZE         的大小来调节每一页的尺寸  如果你只是想在屏幕上 



看到输出的结果        那么最好将 PAPERSIZE      设置为 23    这样在显示多页的时候不会有分页 



情况    在下边的例子中 PAGESIZE 设置的比较小  你可以清楚地看到它的分页情况 



输入 



    SQL》 set linesize 80 



    SQL》 set heading on 



    SQL》 set pagesize 7 



    SQL》 / 



输出 



PRO    PRODUCT_NAME                  UNIT_COST 



P01    MICKEY MOUSE LAMP             29。95 



P02    NO 2 PENCILS 20 PACK        1。99 



P03    COFFEE MUG                    6。95 



P04    FAR SIDE CALENDAR             10。5 



PRO    PRODUCT_NAME                  UNIT_COST 



P05    NATURE CALENDAR               12。99 



P06     SQL MAND REFERENCE        29。99 



P07    BLACK LEATHER BRIEFCASE       99。99 



分析 



    通过将 PAGESIZE    设置为 7    现在在每一页上显示的最大行数为 7               在每一页都会自 



动地打印出新的列标头 



    TIME 则会把时间作为 SQL 提示符的一部分显示 



输入 



    SQL》 set time on 



输出 



    08:52:02 SQL》 



    这些只是 SET 选项中很少的一部分 但的所有的操作基本上是相同的 你已经在 SHOW 



ALL  中看到的巨大的 SET  选项的列表           要定制 SQL  会话你有相当多的选项             你最好把它 



                                                                        446 


…………………………………………………………Page 447……………………………………………………………

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



们中的每一个都试一下             对于许多选项你也许会使用它们的默认设置  但是你也会基于自 



己的要求而经常地改变其中的某些选项 



LOGIN。SQL 文件 



    在你退出 SQL*PLUS  时  你所有的会话设置都会被清除                      而你在重新登录时           如果你 



不使用 LOGIN。SQL      文件你就不得不对它进行重新的初始化工作                       这个文件会在你登录到 



SQL*PLUS 时自动运行  它与计算机中的 AUTOEXEC。BAT                  文件或 UNIX KORN SHELL 下 



的。PROFILE 类似 



    在 PERSONAL ORACLE 7 中你可以使用EDIT 命令来创建你自己的 LOGIN。SQL 文件 



见下图 



    当你在登录到 SQL*PLUS  以后  你将会看到 



    SQL*Plus: Release 3。3。2。0。2 Production on Sun May 11 20:37:58 1997 



    Copyright (c) Oracle Corporation 1979; 1994。  All rights reserved。 



    Enter password: **** 



    Connected to: 



    Personal Oracle7 Release 7。3。2。2。0 Production Release 



    With the distributed and replication options 



    PL/SQL Release 2。3。2。0。0 Production 



                                                                               447 


…………………………………………………………Page 448……………………………………………………………

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



    'HELLO! 



    ………………



    HELLO ! 



    20:38:02 SQL》 



CLEAR 命令 



    在 SQL*PLUS  中  设置是在 LONGOUT      或退出 SQL*PLUS  后自动清除的  而其中的 



一些设置你也可以用 CLEAR 命令来清除              如下例所示 



输入 



    SQL》 clear col 



输出 



    columns cleared 



输入 



    SQL》 clear break 



输出 



    breaks cleared 



输入 



    SQL》 clear pute 



输出 



    putes cleared 



将你的输出格式化 



    SQL*PLUS  中也有许多的命令可以让你将你的输出格式化  这一部分包括了报表头 



列标头及格式的基本的格式化命令 



TTITLE  与 BTITLE 



    TTITLE 与 BTITLE  可以让你创建报表的报头            在前些天我们提到过查询和输出              但 



是使用 SQL*PLUS    你也可以将结果输出到预设的报表中  TTITLE               命令可以让你在每一页 



                                                                        448 


…………………………………………………………Page 449……………………………………………………………

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



输出的顶部放置页眉  BTITLE           则可以在每一页的底部设置页脚  对于这些命令有许多的 



选项可以使用  但是今天我们只讲一些基本的  TTITLE 与 BTITLE  的语法格式如下 



语法 



    TTITLE 'center|left|right' 'text' '&variable' 'skip n' 



    BTITLE 'center|left|right' 'text' '&variable' 'skip n' 



输入 



    SQL》 ttitle 'A LIST OF PRODUCTS' 



    SQL》 btitle 'THAT IS ALL' 



    SQL》 set pagesize 15 



    SQL》 / 



输出 



    Wed May 07 



    page        1 



                                A LIST OF PRODUCTS 



            PRO       PRODUCT_NAME                     UNIT_COST 



            P01       MICKEY MOUSE LAMP                29。95 



            P02       NO 2 PENCILS 20 PACK           1。99 



            P03       COFFEE MUG                       6。95 



            P04       FAR SIDE CALENDAR                10。5 



            P05       NATURE CALENDAR                  12。99 



            P06       SQL MAND REFERENCE            29。99 



            P07       BLACK LEATHER BRIEFCASE          99。99 



                                    THAT IS ALL 



    7 rows selected。 



分析 



    标题会显示在每一页的顶部和底部  许多人会使用页脚来标记报表数据的改变                                     使用 



页眉来标记报表的日期和页数 



格式化列           COLUMN           HEADING           FORMAT 



    格式化的列是从 SELECT 语句中返回的列  命令 column                  heading  format 可以对从报 



表中返回的数据的列标头进行重命名并控制数据显示的方式 



                                                                             449 


…………………………………………………………Page 450……………………………………………………………

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



    在 HEADING 与 FORMAT  命令中常使用 COL'NUM'       COLUMN 用于定义你想格式化 



的列  你所定义的列必须在 SELECT         语句中要出现  在这个命令中你也可以列的别名来代 



替它的全名 



    当使用 HEADING  命令时     你必须使用 COLUMN  命令来定义要列在 HEADING           中的 



布置 



    当使用 FORMAT   命令时    你也必须使用 COLUMN 命令来定义你想要格式化的列 



    使用这三个列的基本语法见下 注意 HEADING 与 FORMAT  命令是可选的 在 FORMAT 



的语法中  如果数据使用的字符类型或 0 到 9 的数字时你必须要使用一个 a                     DECIMAL  也 



可以会用于数字的值上  在 a 的右边是你所允许的数字的宽度 



语法 



    COL'UMN' column_name HEA'DING' 〃new_heading〃 FOR'MAT' 'a1|99。99' 



    下边的 SELECTY 语句显示了列的格式           所指定的列是数值类型的          你想显示的数据 



格式为十进制带美元符号的 



输入 



    SQL》 column unit_cost heading 〃PRICE〃 format 99。99 



    SQL》 select product_name; unit_cost  from products 



输出 



     PRODUCT_NAME                PRICE 



     MICKEY MOUSE LAMP            29。95 



     NO 2 PENCILS 20 PACK       1。99 



     COFFEE MUG                   6。95 



     FAR SIDE CALENDAR            10。50 



     NATURE CALENDAR              12。99 



     SQL MAND REFERENCE        29。99 



     BLACK LEATHER BRIEFCASE      99。99 



分析 



    因为我们使用了格式 99。99       所以允许显示的最大数字为 99。99 



    现在试着简化一下这个命令  这可以让你的 HEADING 命令显得整洁 



输入 



    SQL》 col unit_cost hea 〃UNIT|COST〃 for 09。99 



    SQL》 select product_name; unit_cost from products; 



                                                                    450 


…………………………………………………………Page 451……………………………………………………………

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



输出 



     PRODUCT_NAME              UNITCOST 



     MICKEY MOUSE LAMP         29。95 



     NO 2 PENCILS 20 PACK    01。99 



     COFFEE MUG                06。95 



     FAR SIDE CALENDAR         10。50 



     NATURE CALENDAR           12。99 
返回目录 上一页 下一页 回到顶部 9 9
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!