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

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

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






       JSMITH           MAG_VIEW         VIEW 



       JSMITH           SPORTS           TABLE 



       VJOHNSON         TEST1            TABLE 



       VJOHNSON         HOBBIES          TABLE 



       VJOHNSON         CLASSES          TABLE 



       VJOHNSON         STUDENTS         VIEW 



分析 



   作为用户你可以会拥有比上表更多的对象               系统表会加入许多的表          我们可以很容易 



在将这个清单简化  ALL_CATALOG 视图与 the  USER_CATALOG  视图一样  但是它显示 



给你所有的你可以访问的表  视图           顺序    和同义字 



                                                                  333 


…………………………………………………………Page 334……………………………………………………………

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



INPUT 



    SQL》 SELECT SUBSTR(OBJECT_TYPE;1;15) OBJECT_TYPE; 



        2                  SUBSTR(OBJECT_NAME;1;30)  OBJECT_NAME; 



        3                  CREATED; 



        4                  STATUS 



        5    FROM  USER_OBJECTS 



        6    ORDER  BY  1; 



OUTPUT 



        OBJECT_TYPE      OBJECT_NAME        CREATED      STATUS 



        INDEX           MAGAZINE_INX        14…MAR…97    VALID 



        INDEX            SPORTS_INX         14…MAR…97    VALID 



        INDEX           HOBBY_INX           14…MAR…97    VALID 



        TABLE           MAGAZINE_TBL        01…MAR…97    VALID 



        TABLE            SPORTS             14…MAR…97    VALID 



        TABLE           HOBBY_TBL           16…MAR…97    VALID 



分析 



    你可以使用 USER_OBJECTS         视图来获得关于用户所拥有对象的通用信息如名字                         类 



型  数据的创建        数据的更新以及对象的状态  在上一个查询中                      我们对每一个数据对象 



的创建进行了确认 



INPUT/OUTPUT 



    SQL》 SELECT TABLE_NAME; INITIAL_EXTENT; NEXT_EXTENT 



        2    FROM  USER_TABLES; 



      TABLE_NAME           INITIAL_EXTENT      NEXT EXTENT 



      MAGAZINE_TBL         1048576             540672 



      SPORTS               114688              114688 



分析 



    从 USER_TABLES    中可以选择非常多的有用信息  就看你想要知道什么                         大部分的数 



据都是由存储信息组成 



注   注意最初的和最大的输出值是字节                  在一些解释器中你可能会看到在列之间加以空格 



以更具可读性  见第 19 天的  事务处理 SQL                和第 20 天的     SQL*PLUS 



    ALL_TABLES  与 USER_TABLES     的关系与 ALL_CATALOG 和 USER_CATALOG  关系 



                                                                             334 


…………………………………………………………Page 335……………………………………………………………

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



一样    也就是说  ALL_TABLES       可以让你查看所有的你可以访问的表  而不只是你所拥有 



的表  ALL_TABLES  也可以包括在其它用户目录中存在的表 



INPUT/OUTPUT 



    SQL》 SELECT SUBSTR(OWNER;1;15) OWNER; 



        2                  SUBSTR(TABLE_NAME;1;25)  TABLE_NAME; 



        3                  SUBSTR(TABLESPACE_NAME;1;13)  TABLESPACE 



        4    FROM  ALL_TABLES; 



          OWNER         TABLE_NAME         TABLESPACE 



          SYS           DUAL               SYSTEM 



          JSMITH        MAGAZINE_TBL       USERS 



          SMITH         SPORTS             USERS 



         VJOHNSON       TEST1              USERS 



         VJOHNSON       HOBBIES            USERS 



         VJOHNSON       CLASSES            USERS 



分析 



    你又一次选择了只是你想得到的信息                  在 ALL_TABLES     的许多附加列中也包含着有 



用的信息 



    作为一个数据库用户           你可以通过查询 USER_SEGMENTS            视图来监视你的表和索引 



的增长情况       如同它的名字一样           USER_SEGMENTS    给你了关于每个段的信息              如存储 



信息等等      一个段可以会由一个表  索引  ROLLBACK  簇                 临时表或缓存组成           下边的 



例子告诉了你如何从这个视图中获得有用的信息 



INPUT/OUTPUT 



    SQL》 SELECT SUBSTR(SEGMENT_NAME;1;30) SEGMENT_NAME; 



        2                  SUBSTR(SEGMENT_TYPE;1;8)  SEG_TYPE; 



        3                  SUBSTR(TABLESPACE_NAME;1;25)  TABLESPACE_NAME; 



        4                  BYTES;  EXTENTS 



        5    FROM  USER_SEGMENTS 



        6    ORDER  BY  EXTENTS  DESC 



    SEGMENT_NAME        SEG_TYPE      TABLESPACE_NAME      BYTES    EXTENTS 



    MAGAZINE_TBL        TABLE         USERS                4292608   7 



    SPORTS_INX          INDEX         USERS                573440   4 



                                                                            335 


…………………………………………………………Page 336……………………………………………………………

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



    SPORTS            TABLE        USERS               344064  2 



    MAGAZINE_INX      INDEX        USERS               1589248 1 



分析 



    上边的输出是按 EXTENTS        递减的原则进行了排序的           段增长最多的将会出现于第一 



个行中 



    现在你已经知道了都有哪些表是你可以访问的                   你也许会想知道对于每个表你都可以 



做什么    你的查询是否受限         或你有权限更新表的内容吗            ALL_TAB_PRIVS  视图可以告 



诉你作为一个数据库用户你在每一个可以使用的表中的权限 



INPUT/OUTPUT 



    SQL》 SELECT SUBSTR(TABLE_SCHEMA;1;10) OWNER; 



        2                  SUBSTR(TABLE_NAME;1;25)  TABLE_NAME; 



        3                  PRIVILEGE 



        4    FROM  ALL_TAB_PRIVS; 



       OWNER       TABLE_NAME       PRIVILEGE 



       SYS         DUAL              SELECT 



       JSMITH      MAGAZINE_TBL      SELECT 



       JSMITH      MAGAZINE_TBL     INSERT 



       JSMITH      MAGAZINE_TBL     UPDATE 



       JSMITH      MAGAZINE_TBL     DELETE 



       JSMITH      SPORTS            SELECT 



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