1. <i id="s6b2k"><small id="s6b2k"></small></i>
    <b id="s6b2k"><bdo id="s6b2k"></bdo></b>
  2. <wbr id="s6b2k"></wbr>

    SQL PLUS基本命令的使用方法示例_oracle

    來源:腳本之家  責任編輯:小易  

    1、Oracle 中 dba,all,user, 之間的區別

    1. 結論:'權限大小不同': dba_* > all_* > user_*
       (1) dba_* : 可以訪問 '數據庫' 中所有的對象(前提:該用戶是 dba 用戶)
       (2) all_* :某一用戶 '擁有' 的或 '可以訪問' 的所有的對象
       (3) user_*:某一用戶 '擁有' 的所有對象
    
    2. 查詢是否是 dba 用戶
       select * from dba_role_privs t where t.granted_role = 'DBA';
    
    

    2、desc

    desc:萬能查看命令
    
    查看dept表
    SQL> desc dept
     Name                                      Null?    Type
     ----------------------------------------- -------- --------------------------
     DEPTNO                                    NOT NULL NUMBER(2)
     DNAME                                              VARCHAR2(14)
     LOC                                                VARCHAR2(13)
    

    3、設置SQL*PLUS的運行環境,包括每行的顯示字符數、每頁顯示行數、每頁打印標題前空行數。 set命令基本語法

    在Oracle 11g數據庫中,用戶可以使用set命令來設置SQL*Plus的運行環境;

    set system_variable value;
    
    system_variable:變量名;
    value:變量值;
    
    

    通過set命令設置的環境變量是臨時的,不是永久的;

    當用戶退出SQL*Plus環境后,用戶設置的環境參數會全部消失;

    使用set命令設置運行環境

    pagesize變量:該變量用來設置從頂部標題至頁結束之間的行數;
    set pagesize value;
    value的默認值為14;
    
    使用show pagesize命令顯示當前SQL*Plus環境中的一頁有多少行;
    show pagesize;
    
    同理:
    newpage變量:該變量用來設置一頁中空行的數量;
    set newpage value;
    value的默認值為1;
    
    show newpage;
    
    linesize變量:
    該變量用來設置在SQL*Plus環境中一行所顯示的最多字符總數;
    set linesize value;
    value的默認值為80;
    
    show linesize;
    
    pause變量:
    該變量用來設置SQL*Plus輸出結果是否滾動顯示;
    set pause value;
    
    value變量值有以下三種情況:
    - off:默認值,表示返回結果一次性輸出完畢,中間的每一頁不會暫停;
    - on:表示輸出結果的每一頁都暫停,用戶按后回車鍵后會繼續顯示;
    - text:在設置pause的值為on之后,再設置text的值,則每次暫停都將顯示該字符串; 
            當pause的值設置為off時,設置text的值沒有任何意義;
    
    

    oracle用命令執行sql腳本文件

    當sql命令過多(sql文件過大)時,用plsql執行時比較慢而且容易超時,此時可以用sqlplus命令直接執行sql腳本文件。

    @ H:/sql/test.sql  (絕對路徑)
    

    oracle中spool將查詢的數據寫入文件

    通常情況下,我們使用SPOOL方法,將數據庫中的表導出為文本文件的時候會采用兩種方法,如下述:

    方法一:采用以下格式腳本
    set colsep '' ------設置列分隔符
    set trimspool on
    set linesize 120
    set pagesize 2000
    set newpage 1
    set heading off
    set term off
    spool 路徑+文件名
    select * from tablename;
    spool off
    
    方法二:采用以下腳本
    set trimspool on
    set linesize 120
    set pagesize 2000
    set newpage 1
    set heading off
    set term off
    spool 路徑+文件名
    select col1||','||col2||','||col3||','||col4||'..' from tablename;
    spool off
    
    
    


    差別:

    比較以上方法,即方法一采用設定分隔符然后由sqlplus自己使用設定的分隔符對字段進行分割,方法二將分隔符拼接在SELECT語句中,即手工控制輸出格式。

    在實踐中,我發現通過方法一導出來的數據具有很大的不確定性,這種方法導出來的數據再由sql導入的時候出錯的可能性在95%以上,尤其對大批量的數據表,如100萬條記錄的表更是如此,而且導出的數據文件狂大。

    而方法二導出的數據文件格式很規整,數據文件的大小可能是方法一的1/4左右。經這種方法導出來的數據文件再由sqll導入時,出錯的可能性很小,基本都可以導入成功。

    因此,實踐中我建議大家使用方法二手工去控制spool文件的格式,這樣可以減小出錯的可能性,避免走很多彎路。

    ttitle,btitle命令

    它主要是對頭標題與尾標題的設置,如下:
    eg:為查詢結果設置居中的頭部標題、居右的當天日期作為尾部標題,并為查詢結果列定義列標題。
    
    SQL> ttitle center '結果';
    SQL> btitle right '2021/03/30';
    SQL> select * from dept; ;
    
                                          結果
        DEPTNO DNAME          LOC
    ---------- -------------- -------------
            10 ACCOUNTING     NEW YORK
            20 RESEARCH       DALLAS
            30 SALES          CHICAGO
            40 OPERATIONS     BOSTON
    
    
    
    
    
                                                                          2021/03/30
    如果想撤消ttitle與btitle:
    SQL> ttitle off;
    SQL> btitle off;
    SQL> select * from dept;
    
        DEPTNO DNAME          LOC
    ---------- -------------- -------------
            10 ACCOUNTING     NEW YORK
            20 RESEARCH       DALLAS
            30 SALES          CHICAGO
            40 OPERATIONS     BOSTON
    
    SQL>
                                                       
    

    column 命令

    format格式化輸出

    format 選項
    用于格式化指定的列
    SQL> column sal format $99,99,99;
    SQL> select empno,ename,sal from scott.emp;
    
         EMPNO ENAME             SAL
    ---------- ---------- ----------
          7369 SMITH           $8,00
          7499 ALLEN          $16,00
          7521 WARD           $12,50
          7566 JONES          $29,75
          7654 MARTIN         $12,50
          7698 BLAKE          $28,50
          7782 CLARK          $24,50
          7788 SCOTT          $30,00
          7839 KING           $50,00
          7844 TURNER         $15,00
          7876 ADAMS          $11,00
    
         EMPNO ENAME             SAL
    ---------- ---------- ----------
          7900 JAMES           $9,50
          7902 FORD           $30,00
          7934 MILLER         $13,00
    
    14 rows selected.
    
    heading 選項
    用于定義列標題
    SQL> col empno heading 雇員編號;
    SQL> col ename heading 雇員姓名;
    SQL> col sal heading 雇員薪水;
    SQL> select empno,ename,sal from scott.emp;
    
      雇員編號 雇員姓名     雇員薪水
    ---------- ---------- ----------
          7369 SMITH           $8,00
          7499 ALLEN          $16,00
          7521 WARD           $12,50
          7566 JONES          $29,75
          7654 MARTIN         $12,50
          7698 BLAKE          $28,50
          7782 CLARK          $24,50
          7788 SCOTT          $30,00
          7839 KING           $50,00
          7844 TURNER         $15,00
          7876 ADAMS          $11,00
    
      雇員編號 雇員姓名     雇員薪水
    ---------- ---------- ----------
          7900 JAMES           $9,50
          7902 FORD           $30,00
          7934 MILLER         $13,00
    
    14 rows selected.
    
    


    對緩存區的操作

    (1)查看當前緩存區中的SQL命令。
    >list
    (2)執行存儲在緩存區的SQL命令。
    >run
    (3)將緩存區中的內容保存到一個SQL腳本文件(文件名自擬)。
    >save C:/sql.sql
    (4)把一個腳本文件的內容放進緩存區,并執行緩存區中的語句。
    >get C:/sql.sql
    >start C:/sql.sql
    (5)清除緩存區中的內容。
    >clear buffer
    
    SQL> save H:/sql/test3.txt;
    Created file H:/sql/test3.txt
    SQL> get H:/sql/test.sql;
      1  select table_name from user_tables;
      2* desc dept
    SQL> start H:/sql/test.sql;
    
    TABLE_NAME
    ------------------------------
    DEPT
    EMP
    BONUS
    SALGRADE
    
     Name                                      Null?    Type
     ----------------------------------------- -------- ----------------------------
     DEPTNO                                    NOT NULL NUMBER(2)
     DNAME                                              VARCHAR2(14)
     LOC                                                VARCHAR2(13)
    
    SQL> clear buffer;
    buffer cleared
    SQL>
    

    總結

    到此這篇關于SQL PLUS基本命令使用的文章就介紹到這了,更多相關SQL PLUS命令使用內容請搜索真格學網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持真格學網!

    您可能感興趣的文章:sqlplus登錄\連接命令、sqlplus命令的使用大全oracle sqlplus 常用命令大全使用sqlplus命令行工具為oracle創建用戶和表空間oracle 中 sqlplus命令大全

  3. 本文相關:
  4. oracle中的sum用法講解
  5. oracle sqlplus導出數據到csv文件的方法
  6. oracle undo_management參數不一致錯誤
  7. oracle 11g用戶修改密碼及加鎖解鎖功能實例代碼
  8. oracle誤刪數據表還原的二種方法(oracle還原)
  9. oracle收購timesten 提高數據庫軟件性能
  10. 解決plsql遇到亂碼的問題
  11. 將oracle的create語句更改為alter語句使用
  12. oracle 數據庫 臨時數據的處理方法
  13. oracle cbo優化模式中的5種索引訪問方法淺析
  14. ORACLE中SQLPlus的用法
  15. 如何使用Oracle sqlplus命令
  16. sqlplus如何連接oracle數據庫的某個實例?
  17. oracle 11,sqlplus中的@命令?
  18. oracle sqlplus命令行工具如何啟動?
  19. 怎樣使用sqlplus連接oracle11g數據庫
  20. ORACLE的sqlplus中執行查詢命令
  21. 查詢oracle數據庫所有用戶的sqlplus命令是什么
  22. sqlplus如何連接oracle數據庫?
  23. sqlplus的oracle命令有哪些常用的
  24. 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess數據庫文摘數據庫其它首頁sqlplus登錄\連接命令、sqlplus命令的使用大全oracle sqlplus 常用命令大全使用sqlplus命令行工具為oracle創建用戶和表空間oracle 中 sqlplus命令大全oracle中的sum用法講解oracle sqlplus導出數據到csv文件的方法oracle undo_management參數不一致錯誤oracle 11g用戶修改密碼及加鎖解鎖功能實例代碼oracle誤刪數據表還原的二種方法(oracle還原)oracle收購timesten 提高數據庫軟件性能解決plsql遇到亂碼的問題將oracle的create語句更改為alter語句使用oracle 數據庫 臨時數據的處理方法oracle cbo優化模式中的5種索引訪問方法淺析oracle 查看表空間的大小及使用情linux系統(x64)安裝oracle11g完oracle數據庫下載及安裝圖文操作oracle存儲過程基本語法介紹oracle 10g 安裝教程[圖文]oracle 如何查詢被鎖定表及如何解基于ora-12170 tns 連接超時解決oracle中to_date詳細用法示例(ororacle數據庫tns配置方法詳解oracle 創建表空間詳細介紹oracle日期函數簡介oracle自動備份及自動備份步驟oracle7.x 回滾表空間數據文件誤刪除處理oracle sql-update、delete、insert優化和oracle 11g client客戶端安裝教程詳解oracle數據庫各類控制語句的使用安裝oracle加載數據庫錯誤areasqueries的oracle 函數大全oracle數據操作和控制語言詳解oracle 11g release (11.1) 索引底層的數
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.yu113.com All Rights Reserved
    战天txt全集下载