JUST DO IT ~

          我只想當個程序員

          sqlplus 初始化 login.sql

          引用 :
          http://awads.net/wp/2005/08/04/oracle-sqlplus/


          http://www.aygfsteel.com/gddg/admin/EditPosts.aspx?opt=1


          SELECT HTTPURITYPE('http://feeds.qzone.qq.com/cgi-bin/cgi_rss_out?uin=847915658').getxml() orana_feed
          FROM dual;

          也挺好的加個東西

          Related to your search for: oracle sqlplus var

          Welcome! You came here from www.google.cn searching for oracle sqlplus var. In addition to the post below these posts might be of interest:


          sqlplus  修改  設置命令行提示符 

          set sqlprompt 'command >'

          但前 連接的實例名稱 ,  ----但前
          column user_sid new_value sql_prompt
          

          select
          lower(user) || '@' ||
          substr(global_name, 1,           --
          decode(instr(global_name, '.'),   ---但前系統名
           0, length(global_name),
          instr(global_name, '.') - 1)
          ) user_sid
            from global_name
          /


          But you want to set the sql prompt to be something like “current user @ database name”, so you may do something like this:

          select
          lower(user|| '@' ||
          substr(global_name, 
          1,
          decode(instr(global_name, 
          '.'),
           
          0, length(global_name),
          instr(global_name, 
          '.'- 1)
          ) user_sid
            
          from global_name
          /

          USER_SID
          --------------------------------------

          GLOBAL_NAME
          --------------------------------------

          idmp@IDMP
          IDMP.REGRESS.RDBMS.DEV.US.ORACLE.COM





          但前列 賦值給 變量sql_prompt

          column user_sid new_value sql_prompt
           set sqlprompt 'command >'
          column user_sid new_value sql_prompt
          select lower(user) || '@' ||
           '&_CONNECT_IDENTIFIER' || '-'|| utl_inaddr.get_host_address  user_sid from dual;


          創造 自己的  sqlplus   登陸文件  login.sql 


          --查服務器ip

          SQL> select utl_inaddr.get_host_address from dual;

          GET_HOST_ADDRESS
          -------------------------------------------------------------

          192.168.1.108



          存放 腳本 的地方

          C:\oracle\product\10.2.0\client_2\sqlplus\admin
          idmp@idmp-192.168.2.101> @C:\oracle\product\10.2.0\db_2\sqlplus\admin\login




          SQL> define &sql_prompt
          輸入 sql_prompt 的值:  ^X
          檢測到用戶請求中斷或 EOF。






          connect.sql

          --set term off
           connect &1
           @login



          glogin.sql


          set term off
          set serveroutput on size 1000000 format wrapped
          set long 5000
          set linesize 131
          set trimspool on
          set pagesize 9999
          define sql_prompt=idle
          column user_sid new_value sql_prompt
          select lower(user) || '@' ||
           '&_CONNECT_IDENTIFIER' || '-'|| utl_inaddr.get_host_address  user_sid from dual;
          set sqlprompt '&sql_prompt> '
          set timing on
          set term on

           set term off
          connect &1
          @login
          


           set term off
          disconnect
          @login

          H:\SQLplus>sqlplus /nolog
          idle> @connect scott/tiger
          scott@eddev> @disconnect
          idle>



            1、 USERENV(OPTION)
              返回當前的會話信息.
              OPTION='ISDBA'若當前是DBA角色,則為TRUE,否則FALSE.
              OPTION='LANGUAGE'返回數據庫的字符集.
              OPTION='SESSIONID'為當前會話標識符.
              OPTION='ENTRYID'返回可審計的會話標識符.
              OPTION='LANG'返回會話語言名稱的ISO簡記.
              OPTION='INSTANCE'返回當前的實例.
             OPTION='terminal'返回當前計算機名
              SELECT USERENV('LANGUAGE') FROM DUAL;
            







          SQL> show show
          showmode OFF
          SQL> set show on
          新值:  showmode BOTH
          SQL> show show









          posted on 2008-08-03 19:00 小高 閱讀(2322) 評論(6)  編輯  收藏

          評論

          # re: sqlplus 初始化 login.sql 2008-08-03 22:15 小高

          [Oracle] 用 Oracle 的 SQL*Plus 工具創建 HTML 頁面
          作者:Fenng
          日期:23-Dec-2003 
          出處:http://www.dbanotes.net
          版本:1.01

          Oracle 的 SQL*Plus 工具有一些比較有趣的選項,合理的使用,能夠給我們意想不到的后果。其中有一個 ”-M” 選
          項能夠創建用來創建 HTML 報表,在實際應用中很有用處。我們先來看看 SQL*Plus的一些選項:

          -----------------------Oracle8i------Begin------------------------------------------------
          C:\>SQLPLUS -

          用法 : SQLPLUS [ [<option>] [<logon>] [<start>] ]
          其中 <option> ::= - | -? | [ [-M <o>] [-R <n>] [-S] ]
          < 登錄 > ::= < 用戶名 >[/< 口令 >][@<connect_string>] | / | /NOLOG
          < 啟動 > : : = @< 文件名 >[.<ext>] [< 參數 > ...]
          "-" 顯示使用語法
          "-?" 顯示 SQL*Plus 版本標幟
          "-M <o>" 使用 HTML 標志選項 <o>
          "-R <n>" uses restricted mode <n>
          "-S" uses silent mode

          ”-M” 選項指定在輸出的時侯使用 HTML 標記來輸出數據,用以代替普通的文本。
          -----------------------Oracle8i-------------End-------------------------------------------

          -----------------------Oracle9i------Begin------------------------------------------------
          D:\>sqlplus -

          SQL*Plus: Release 9.2.0.4.0 - Production

          用法: SQLPLUS [ [<option>] [<logon>] [<start>] ]
          其中 <option> ::= -H | -V | [ [-L] [-M <o>] [-R <n>] [-S] ]
          <logon> ::= <username>[/<password>][@<connect_string>] | / | /NOLOG
          <start> ::= @<URI>|<filename>[.<ext>] [<parameter> ...]
          "-H" 顯示 SQL*Plus 的版本標幟和使用語法
          "-V" 顯示 SQL*Plus 的版本標幟
          "-L" 只嘗試登錄一次
          "-M <o>" 使用 HTML 標志選項 <o>
          "-R <n>" uses restricted mode <n>
          "-S" uses silent mode
          -----------------------Oracle9i-------------End-------------------------------------------

          -----------------------Oracle10G Beta------Begin---------------------------------------

          D:\>sqlplus -

          SQL*Plus: Release 10.1.0.0.0 - Beta

          用法: SQLPLUS [ [<option>] [<logon>] [<start>] ]
          其中 <option> ::= -H | -V | [ [-L] [-M <o>] [-R <n>] [-S] ]
          <logon> ::= <username>[/<password>][@<connect_string>] | / | /NOLOG
          <start> ::= @<URI>|<filename>[.<ext>] [<parameter> ...]
          "-H" 顯示 SQL*Plus 的版本標幟和使用語法
          "-V" 顯示 SQL*Plus 的版本標幟
          "-C" 兼容性版本 <v>
          "-L" 只嘗試登錄一次
          "-M <o>" 使用 HTML 標志選項 <o>
          "-R <n>" uses restricted mode <n>
          "-S" uses silent mode
          -----------------------Oracle10G Beta---END---------------------------------------------

          (我們從中也可以看出SQLPlus命令的一些變化,如新的參數等)

          其中 ”-M” 選項的語法如下:

          [-M[ARKUP] "HTML [ON|OFF] [HEAD text] [BODY text]

          [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]"

          如果我們在實際應用中,要對公司的某個Table進行每個月的報表 HTML 化,用 SQL*Plus 的這個特性很容易做到。

          舉例如下:

          我們準備對 Scott 模式下的 DEPT 表進行處理。 DEPT 表內容:

          SQL> SELECT * FROM dept;

          DEPTNO DNAME LOC
          ---------- ---------------------------- ------------
          10 ACCOUNTING NEW YORK
          20 RESEARCH DALLAS
          30 SALES CHICAGO
          40 OPERATIONS BOSTON

          在系統命令行下輸出 HTML 文件:

          將下面幾行語句存到一個 .sql 腳本中(比如說 q.sql ) :

          SET ECHO OFF
          SET FEEDBACK OFF
          SELECT * FROM dept;
          SET ECHO ON
          SET FEEDBACK ON
          exit

          然后在命令行下調用如下命令:

          C:\> sqlplus -s -m "HTML ON HEAD DEPT 表格之內容 " Scott/tiger @c:\q.sql>Dept.html

          對這條命令簡單的解釋一下:其中 ”-s” 表示 silent 模式, ”-m” 表示啟用 HTML Markup 選項,
          ”HEAD DEPT 表格之內容 ” 可以用來定制一個簡單的標題。然后命令中跟的是數據庫用戶名字和密碼,
          執行腳本,重定向到 Dept.html 中。

          輸出 Dept.html 有如下內容(空白處已經截去):

          DEPT表格之內容
          DEPTNO DNAME LOC
          10 ACCOUNTING NEW YORK
          20 RESEARCH DALLAS
          30 SALES CHICAGO
          40 OPERATIONS BOSTON

          在 SQL*Plus 下輸出文件

          在 SQL*Plus 中可以用 SET MARKUP 命令來做到。

          SET MARKUP

          用法 : SET MARKUP HTML [ON|OFF] [HEAD text] [BODY text]

          [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]

          把下面的內容存為一個 .sql 腳本 ( 比如說 C:\q.sql) :

          SET ECHO OFF
          SET FEEDBACK OFF
          SET MARKUP HTML ON SPOOL ON
          SPOOL c:\Dept.html
          SELECT * FROM dept;
          SPOOL OFF
          SET MARKUP HTML OFF
          SET ECHO ON
          SET FEEDBACK ON

          在 SQL*Plus 中調用,即可創建內容。在 C:中創建了名為 Dept.html 的 HTML 頁面,如下所示:
          DEPTNO DNAME LOC
          10 ACCOUNTING NEW YORK
          20 RESEARCH DALLAS
          30 SALES CHICAGO
          40 OPERATIONS BOSTON

          注:由于格式化的問題,實際的顯示效果可能有所不同.
            回復  更多評論   

          # re: sqlplus 初始化 login.sql 2008-08-03 22:16 小高

          用spool 輸出文件 .............html 查詢的結果
            回復  更多評論   

          # re: sqlplus 初始化 login.sql 2008-08-03 22:53 小高

          已用時間: 00: 00: 01.04
          idmp@idmp-192.168.2.101> set markup html on entmap ON spool on
          preformat off
          idmp@idmp-192.168.2.101&gt; spool tables.xls
          <br>
          idmp@idmp-192.168.2.101&gt; select * from dual;
          <br>
          <p>
          <table border='1' width='90%' align='center' summary='Script output'>
          <tr>
          <th scope="col">
          D
          </th>
          </tr>
          <tr>
          <td>
          X
          </td>
          </tr>
          </table>
          <p>

          已用時間: 00: 00: 00.04
          idmp@idmp-192.168.2.101&gt; spool off  回復  更多評論   

          # re: sqlplus 初始化 login.sql 2008-08-03 23:15 小高

          select
          q'{
          @bar;
          }'
          from dual;



          select
          '
          @foo.htm;
          '
          from dual;




          create or replace package foo
          as
          @foo_declarations;
          @foo_procedures;
          @foo_functions;
          end;



          http://awads.net/wp/2007/03/25/3-useful-sqlplus-tips/  回復  更多評論   

          # re: sqlplus 初始化 login.sql 2008-08-04 21:34 小高

          現實所有define 的定義

          idmp@idmp-192.168.2.100> define



          DEFINE _DATE = "04-8月 -08" (CHAR)
          DEFINE _CONNECT_IDENTIFIER = "idmp" (CHAR)
          DEFINE _USER = "IDMP" (CHAR)
          DEFINE _PRIVILEGE = "" (CHAR)
          DEFINE _SQLPLUS_RELEASE = "1002000100" (CHAR)
          DEFINE _EDITOR = "Notepad" (CHAR)
          DEFINE _O_VERSION = "Oracle Database 10g Enterprise Edition Release 10.2.0.
          1.0 - Production
          With the Partitioning, OLAP and Data Mining options" (CHAR)
          DEFINE _O_RELEASE = "1002000100" (CHAR)
          DEFINE SQL_PROMPT = "idmp@idmp-192.168.2.100" (CHAR)
          DEFINE ANBC = "1" (CHAR)
          idmp@idmp-192.168.2.100>  回復  更多評論   

          # re: sqlplus 初始化 login.sql 2008-08-05 05:30 小高

          set term off
          set linesize 10001
          spool a.txt
          select * from dl_hqk_his where date_ > to_date('20070101','yyyymmdd');
          spool off
          set term on  回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          <2008年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統計

          常用鏈接

          留言簿(3)

          隨筆分類(352)

          收藏夾(19)

          關注的blog

          手冊

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 长治县| 任丘市| 绥中县| 南和县| 伊吾县| 曲麻莱县| 五寨县| 塘沽区| 宁海县| 湖北省| 孟村| 新巴尔虎左旗| 大港区| 翁牛特旗| 漾濞| 栾城县| 和平区| 盱眙县| 紫云| 兴海县| 洱源县| 莲花县| 巨鹿县| 江北区| 荆门市| 开原市| 台北市| 上思县| 全南县| 达日县| 进贤县| 聂荣县| 乌拉特后旗| 托克逊县| 浠水县| 兴义市| 都兰县| 阿鲁科尔沁旗| 涪陵区| 梅州市| 玉树县|