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

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

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






INPUT 



    SQL》 SET ECHO OFF 



    SQL》 SET FEEDBACK OFF 



                                                                           366 


…………………………………………………………Page 367……………………………………………………………

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



     SQL》 SET HEADING OFF 



     SQL》 SPOOL PUB_SYN。SQL 



     SQL》 SELECT 'CREATE PUBLIC SYNONYM ' || TABLE_NAME || ' FOR ' || 



        2                    OWNER  ||  '。'  ||  TABLE_NAME  ||  ';' 



        3    FROM  SYS。DBA_TABLES 



        4    WHERE  OWNER  =  'RYAN' 



        5    / 



OUTPUT 



    CREATE PUBLIC SYNONYM ACCT_PAY FOR RYAN。ACCT_PAY; 



    CREATE PUBLIC SYNONYM ACCT_REC FOR RYAN。ACCT_REC; 



    CREATE PUBLIC SYNONYM CUSTOMERS FOR RYAN。CUSTOMERS; 



    CREATE PUBLIC SYNONYM EMPLOYEES FOR RYAN。EMPLOYEES; 



    CREATE PUBLIC SYNONYM HISTORY FOR RYAN。HISTORY; 



    CREATE PUBLIC SYNONYM INVOICES FOR RYAN。INVOICES; 



    CREATE PUBLIC SYNONYM ORDERS FOR RYAN。ORDERS; 



    CREATE PUBLIC SYNONYM PRODUCTS FOR RYAN。PRODUCTS; 



    CREATE PUBLIC SYNONYM PROJECTS FOR RYAN。PROJECTS; 



    CREATE PUBLIC SYNONYM VENDORS FOR RYAN。VENDORS; 



    现在  运行这个文件 



INPUT/OUTPUT 



     SQL》 SPOOL OFF 



     SQL》 ED PUB_SYN。SQL 



     SQL》 SET ECHO ON 



     SQL》 SET FEEDBACK ON 



     SQL》 START PUB_SYN。SQL 



     SQL》 CREATE PUBLIC SYNONYM ACCT_PAY FOR RYAN。ACCT_PAY; 



     Synonym created。 



     SQL》 CREATE PUBLIC SYNONYM ACCT_REC FOR RYAN。ACCT_REC; 



     Synonym created。 



     SQL》 CREATE PUBLIC SYNONYM CUSTOMERS FOR RYAN。CUSTOMERS; 



                                                                                     367 


…………………………………………………………Page 368……………………………………………………………

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



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM EMPLOYEES FOR RYAN。EMPLOYEES; 



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM HISTORY FOR RYAN。HISTORY; 



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM INVOICES FOR RYAN。INVOICES; 



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM ORDERS FOR RYAN。ORDERS; 



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM PRODUCTS FOR RYAN。PRODUCTS; 



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM PROJECTS FOR RYAN。PROJECTS; 



    Synonym created。 



    SQL》 CREATE PUBLIC SYNONYM VENDORS FOR RYAN。VENDORS; 



    Synonym created 



分析 



    几乎是马上  所有的数据库用户都可以通过公共同义字来访问为 RYAN 所拥有的表了 



现在用户无需在执行查询的时候对表加以限制                        限制的意思就是必须指定表的所有者                    如 



RYAN。VENDORS 



    但是如果公共同义字并不存在呢                 假如 BRANDON       想访问所有为 RYAN        所拥有的表 



来创建私有同义字时该如何做呢 



INPUT/OUTPUT 



    SQL》 CONNECT BRANDON 



    ENTER PASSWORD: ******* 



    CONNECTED。 



    SQL》 SET ECHO OFF 



    SQL》 SET FEEDBACK OFF 



    SQL》 SET HEADING OFF 



    SQL》 SPOOL PRIV_SYN。SQL 



    SQL》 SELECT 'CREATE SYNONYM ' || TABLE_NAME || ' FOR ' || 



                                                                               368 


…………………………………………………………Page 369……………………………………………………………

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



         2                    OWNER  ||  '。'  ||  TABLE_NAME  ||  ';' 



         3    FROM  ALL_TABLES 



         4    / 



     CREATE SYNONYM DUAL FOR SYS。DUAL; 



     CREATE SYNONYM AUDIT_ACTIONS FOR SYS。AUDIT_ACTIONS; 



     CREATE SYNONYM USER_PROFILE FOR SYSTEM。USER_PROFILE; 



     CREATE SYNONYM CUSTOMERS FOR RYAN。CUSTOMERS; 



     CREATE SYNONYM ORDERS FOR RYAN。ORDERS; 



     CREATE SYNONYM PRODUCTS FOR RYAN。PRODUCTS; 



     CREATE SYNONYM INVOICES FOR RYAN。INVOICES; 



     CREATE SYNONYM ACCT_REC FOR RYAN。ACCT_REC; 



     CREATE SYNONYM ACCT_PAY FOR RYAN。ACCT_PAY; 



     CREATE SYNONYM VENDORS FOR RYAN。VENDORS; 



     CREATE SYNONYM EMPLOYEES FOR RYAN。EMPLOYEES; 



     CREATE SYNONYM PROJECTS FOR RYAN。PROJECTS; 



     CREATE SYNONYM HISTORY FOR RYAN。HISTORY; 



INPUT/OUTPUT 



     SQL》 SPOOL OFF 



     SQL》 



     SQL》 SET ECHO OFF 



     SQL》 SET FEEDBACK ON 



     SQL》 START PRIV_SYN。SQL 



     Synonym created。 



     Synonym created。 



     Synonym created。 



     Synonym created。 



     Synonym created。 



     Synonym created。 



     Synonym created。 



     Synonym created。 



                                                                                         369 


…………………………………………………………Page 370……………………………………………………………

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



    Synonym created。 



    Synonym created。 



    Synonym created。 



    Synonym created。 



    Synonym created。 



分析 



    几乎没做什么工作  BRANDON 就有了所有为 RYAN 所拥有的表的同义字                                  他不再需 



要对表进行限制了 



为你的表创建视图 



    如果你想为一组表创建视图  你需要做与下例类似的工作 



INPUT 



    SQL》 SET ECHO OFF 



    SQL》 SET FEEDBACK OFF 



    SQL》 SET HEADING OFF 



    SQL》 SPOOL VIEWS。SQL 



    SQL》 SELECT 'CREATE VIEW ' || TABLE_NAME || '_VIEW AS SELECT * FROM ' || 



        2                  TABLE_NAME  ||  ';' 



        3    FROM  CAT 



        4    / 



OUTPUT 



    CREATE VIEW ACCT_PAY_VIEW AS SELECT * FROM ACCT_PAY; 



    CREATE VIEW ACCT_REC_VIEW AS SELECT * FROM ACCT_REC; 



    CREATE VIEW CUSTOMERS_VIEW AS SELECT * FROM CUSTOMERS; 



    CREATE VIEW EMPLOYEES_VIEW AS SELECT * FROM EMPLOYEES; 



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