JUST DO IT ~

我只想当个程序员

sqlplus 初始化 login.sql

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


http://www.blogjava.net/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 小高 阅读(2317) 评论(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

手册

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜