﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-用程序来创造财富-文章分类-oracle</title><link>http://www.blogjava.net/ioriqw/category/10521.html</link><description>在中国商界、尤其是互联网界，另一群“80后”青年正在集体浮出水面，以你可能想都想不到的方式崛起。</description><language>zh-cn</language><lastBuildDate>Sat, 10 Mar 2007 10:04:10 GMT</lastBuildDate><pubDate>Sat, 10 Mar 2007 10:04:10 GMT</pubDate><ttl>60</ttl><item><title>sqlplus的小秘密</title><link>http://www.blogjava.net/ioriqw/articles/43480.html</link><dc:creator>崛起的程序员</dc:creator><author>崛起的程序员</author><pubDate>Thu, 27 Apr 2006 02:03:00 GMT</pubDate><guid>http://www.blogjava.net/ioriqw/articles/43480.html</guid><wfw:comment>http://www.blogjava.net/ioriqw/comments/43480.html</wfw:comment><comments>http://www.blogjava.net/ioriqw/articles/43480.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ioriqw/comments/commentRss/43480.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ioriqw/services/trackbacks/43480.html</trackback:ping><description><![CDATA[
		<font face="Arial" size="2">也许你还不知道 - sqlplus的小秘密(1) <br />=========================================================== <br />作者: oldwain(</font>
		<a href="http://blog.itpub.net/oldwain" target="_blank">
				<font face="Arial" size="2">http://blog.itpub.net/oldwain</font>
		</a>
		<font face="Arial" size="2">)<br />发表于:2005.09.05 15:09<br />分类: <br />出处：</font>
		<a href="http://blog.itpub.net/post/6/40158" target="_blank">
				<font face="Arial" size="2">http://blog.itpub.net/post/6/40158</font>
		</a>
		<br />
		<font face="Arial" size="2">--------------------------------------------------------------- <br /><br />有没有为了dbms_output.put_line会"吃掉"最前面的空格而苦恼?<br /></font>
		<blockquote>
				<pre>
						<font face="Arial" size="2">代码:<hr /></font>
						<code>
								<font color="#000000">
										<font color="#0000bb">
												<br />
										</font>
										<font face="Arial">
												<font size="2">
														<font color="#007700">[</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]</font>
														<font color="#0000bb">scott</font>
														<font color="#007700">@</font>
														<font color="#0000bb">O9I</font>
														<font color="#007700">.</font>
														<font color="#0000bb">US</font>
														<font color="#007700">.</font>
														<font color="#0000bb">ORACLE</font>
														<font color="#007700">.</font>
														<font color="#0000bb">COM</font>
														<font color="#007700">[/</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]&gt; </font>
												</font>
										</font>
										<font face="Arial">
												<font size="2">
														<font color="#0000bb">set serveroutput on
<br /></font>
														<font color="#007700">[</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]</font>
														<font color="#0000bb">scott</font>
														<font color="#007700">@</font>
														<font color="#0000bb">O9I</font>
														<font color="#007700">.</font>
														<font color="#0000bb">US</font>
														<font color="#007700">.</font>
														<font color="#0000bb">ORACLE</font>
														<font color="#007700">.</font>
														<font color="#0000bb">COM</font>
														<font color="#007700">[/</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]&gt; </font>
														<font color="#0000bb">exec dbms_output</font>
														<font color="#007700">.</font>
														<font color="#0000bb">put_line</font>
														<font color="#007700">(</font>
														<font color="#dd0000">'   abc'</font>
												</font>
										</font>
										<font face="Arial" color="#007700" size="2">);
<br /></font>
										<font face="Arial">
												<font size="2">
														<font color="#0000bb">abc
<br /><br />PL</font>
														<font color="#007700">/</font>
														<font color="#0000bb">SQL procedure successfully completed</font>
												</font>
										</font>
										<font face="Arial" color="#007700" size="2">.<br /></font>
								</font>
						</code>
						<font face="Arial" size="2">
								<hr />
						</font>
				</pre>
		</blockquote>
		<br />
		<br />
		<br />
		<font face="Arial" size="2">(俺以前曾经很苦恼为了保留空格, 尝试了加".", 加不可见字符等办法, 不过终究觉得不自然)<br />实际上, 只要在set serveroutput on后加上format wrapped参数, 就可以避免这个问题<br /></font>
		<blockquote>
				<pre>
						<font face="Arial" size="2">代码:<hr /></font>
						<code>
								<font color="#000000">
										<font color="#0000bb">
												<br />
										</font>
										<font face="Arial">
												<font size="2">
														<font color="#007700">[</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]</font>
														<font color="#0000bb">scott</font>
														<font color="#007700">@</font>
														<font color="#0000bb">O9I</font>
														<font color="#007700">.</font>
														<font color="#0000bb">US</font>
														<font color="#007700">.</font>
														<font color="#0000bb">ORACLE</font>
														<font color="#007700">.</font>
														<font color="#0000bb">COM</font>
														<font color="#007700">[/</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]&gt; </font>
												</font>
										</font>
										<font face="Arial">
												<font size="2">
														<font color="#0000bb">set serveroutput on format wrapped
<br /></font>
														<font color="#007700">[</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]</font>
														<font color="#0000bb">scott</font>
														<font color="#007700">@</font>
														<font color="#0000bb">O9I</font>
														<font color="#007700">.</font>
														<font color="#0000bb">US</font>
														<font color="#007700">.</font>
														<font color="#0000bb">ORACLE</font>
														<font color="#007700">.</font>
														<font color="#0000bb">COM</font>
														<font color="#007700">[/</font>
														<font color="#0000bb">email</font>
														<font color="#007700">]&gt; </font>
														<font color="#0000bb">exec dbms_output</font>
														<font color="#007700">.</font>
														<font color="#0000bb">put_line</font>
														<font color="#007700">(</font>
														<font color="#dd0000">'   abc'</font>
												</font>
										</font>
										<font face="Arial" color="#007700" size="2">);
<br />   </font>
										<font face="Arial">
												<font size="2">
														<font color="#0000bb">abc
<br /><br />PL</font>
														<font color="#007700">/</font>
														<font color="#0000bb">SQL procedure successfully completed</font>
												</font>
										</font>
										<font face="Arial" color="#007700" size="2">.<br /></font>
								</font>
						</code>
						<font face="Arial" size="2">
								<hr />
						</font>
				</pre>
		</blockquote>
		<br />
		<font face="Arial" size="2">(需要引用, 请注明出处: </font>
		<a href="http://blog.itpub.net/oldwain" target="_blank">
				<font face="Arial" size="2">http://blog.itpub.net/oldwain</font>
		</a>
		<font face="Arial" size="2">)<br /><br /></font>
		<span class="javascript" id="text3006599" style="FONT-SIZE: 12px">
				<font face="Arial" size="2">也许你还不知道 - sqlplus的小秘密(2) <br />=========================================================== <br />作者: oldwain(http://blog.itpub.net/oldwain)<br />发表于:2005.09.06 10:06<br />分类: <br />出处：http://blog.itpub.net/post/6/40252<br />--------------------------------------------------------------- <br /><br />Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本:<br /><br />select deptno, empno, ename<br />from emp<br /><br />where empno = '7788';<br />如果拷贝到sql*plus中执行, 就会出现错误:<br /><br /><br />scott@O9I.US.ORACLE.COM&gt; select deptno, empno, ename<br />2 from emp<br />3<br />scott@O9I.US.ORACLE.COM&gt; where empno = '7788';<br />SP2-0734: unknown command beginning "where empn..." - rest of line ignored.<br />scott@O9I.US.ORACLE.COM&gt;<br /><br />原因是sqlplus遇到空行就认为是语句结束了.<br />其实要改变这种现象, 只要使用SQLBLANKLINES参数就可以了<br />scott@O9I.US.ORACLE.COM&gt; SET SQLBLANKLINES ON<br />scott@O9I.US.ORACLE.COM&gt;<br />scott@O9I.US.ORACLE.COM&gt; select deptno, empno, ename<br />2 from emp<br />3<br />4 where empno = '7788';<br /><br />DEPTNO EMPNO ENAME<br />---------- ---------- ----------<br />20 7788 SCOTT<br /><br />scott@O9I.US.ORACLE.COM&gt;<br />(需要引用, 请注明出处: http://blog.itpub.net/oldwain)<br /><br /></font>
				<p>
						<span class="javascript" id="text3006601" style="FONT-SIZE: 12px">
								<font face="Arial" size="2">也许你还不知道 - sqlplus的小秘密(3) <br />=========================================================== <br />作者: oldwain(http://blog.itpub.net/oldwain)<br />发表于:2005.09.07 10:04<br />分类: <br />出处：http://blog.itpub.net/post/6/40364<br />--------------------------------------------------------------- <br /><br />有没有过这样的经历? 在sql*plus中敲了很长的命令后, 突然发现想不起某个列的名字了, 如果取消当前的命令,待查询后再重敲, 那太痛苦了. 当然你可以另开一个sql*plus窗口进行查询, 但这里提供的方法更简单.<br /><br />比如说, 你想查工资大于4000的员工的信息, 输入了下面的语句:<br /><br />scott@O9I.US.ORACLE.COM&gt; select deptno,<br />2 empno,<br />3 ename<br />4 from emp<br />5 where<br />这时, 你发现你想不起来工资的列名是什么了.<br /><br />这种情况下, 只要在下一行以#开头, 就可以执行一条sql*plus命令, 执行完后, 刚才的语句可以继续输入<br /><br /><br />scott@O9I.US.ORACLE.COM&gt; select deptno,<br />2 empno,<br />3 ename<br />4 from emp<br />5 where<br />6 #desc emp<br />Name Null? Type<br />----------------------------------------- -------- --------------<br /><br />EMPNO NOT NULL NUMBER(4)<br />ENAME VARCHAR2(10)<br />JOB VARCHAR2(9)<br />MGR NUMBER(4)<br />HIREDATE DATE<br />SAL NUMBER(7,2)<br />COMM NUMBER(7,2)<br />DEPTNO NUMBER(2)<br /><br />6 sal &gt; 4000;<br /><br />DEPTNO EMPNO ENAME<br />---------- ---------- ----------<br />10 7839 KING<br /><br />scott@O9I.US.ORACLE.COM&gt;<br />(需要引用, 请注明出处: http://blog.itpub.net/oldwain)<br /><br /><br /></font>
						</span>
				</p>
				<p>
						<span class="javascript" id="text3006606" style="FONT-SIZE: 12px">
								<font face="Arial" size="2">也许你还不知道 - sqlplus的小秘密(4) <br />=========================================================== <br />作者: oldwain(</font>
								<a href="http://blog.itpub.net/oldwain" target="_blank">
										<font face="Arial" size="2">http://blog.itpub.net/oldwain</font>
								</a>
								<font face="Arial" size="2">)<br />发表于:2005.09.08 12:54<br />分类: <br />出处：</font>
								<a href="http://blog.itpub.net/post/6/40485" target="_blank">
										<font face="Arial" size="2">http://blog.itpub.net/post/6/40485</font>
								</a>
								<br />
								<font face="Arial" size="2">--------------------------------------------------------------- <br /><br />也许你还不知道 - sqlplus的小秘密(4)<br /><br />这个也许不算什么秘密, 很多人大概都知道, 不过用过的人也许不多.<br /><br />在8.1.7版本(也许是816? 不太确定)以后, sql*plus中有一个set markup html的命令, 可以将sql*plus的输出以html格式展现.<br /><br /></font>
								<blockquote>
										<pre>
												<font face="Arial" size="2">代码:<hr /></font>
												<code>
														<font color="#000000">
																<font color="#0000bb">
																		<br />
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">[</font>
																				<font color="#0000bb">email</font>
																				<font color="#007700">]</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">[/</font>
																				<font color="#0000bb">email</font>
																				<font color="#007700">]&gt; </font>
																		</font>
																</font>
																<font face="Arial" color="#0000bb" size="2">set markup html on spool on
<br /></font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; select empno, ename from emp where rownum&lt;3;
<br />&lt;br&gt;
<br />&lt;p&gt;
<br />&lt;table border='1' width='90%' align='center' summary='Script output'&gt;
<br />&lt;tr&gt;
<br />&lt;th scope="</font>
																				<font color="#0000bb">col</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />EMPNO
<br />&lt;/th&gt;
<br />&lt;th scope="</font>
																				<font color="#0000bb">col</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />ENAME
<br />&lt;/th&gt;
<br />&lt;/tr&gt;
<br />&lt;tr&gt;
<br />&lt;td align="</font>
																				<font color="#0000bb">right</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />7369
<br />&lt;/td&gt;
<br />&lt;td&gt;
<br />SMITH
<br />&lt;/td&gt;
<br />&lt;/tr&gt;
<br />&lt;tr&gt;
<br />&lt;td align="</font>
																				<font color="#0000bb">right</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />7499
<br />&lt;/td&gt;
<br />&lt;td&gt;
<br />ALLEN
<br />&lt;/td&gt;
<br />&lt;/tr&gt;
<br />&lt;/table&gt;
<br />&lt;p&gt;"</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">&amp;</font>
																				<font color="#0000bb">gt</font>
																		</font>
																</font>
																<font face="Arial" color="#007700" size="2">;<br /></font>
														</font>
												</code>
												<font face="Arial" size="2">
														<hr />
												</font>
										</pre>
								</blockquote>
								<p>
										<br />
										<font face="Arial" size="2">注意其中的spool on, 当在屏幕上输出的时候, 我们看不出与不加spool on有什么区别, <br />但是当我们使用spool filename 输出到文件的时候, 会看到spool文件中出现了&lt;html&gt;&lt;body&gt;等tag.<br /></font>
								</p>
								<blockquote>
										<pre>
												<font face="Arial" size="2">代码:<hr /></font>
												<code>
														<font color="#000000">
																<font color="#0000bb">
																		<br />
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; spool c:emp.htm
<br />&lt;br&gt;
<br />"</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">&amp;</font>
																				<font color="#0000bb">gt</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">; /
<br />&lt;</font>
																				<font color="#0000bb">br</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">p</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">table border</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">'1' </font>
																				<font color="#0000bb">width</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">'90%' </font>
																				<font color="#0000bb">align</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">'center' </font>
																				<font color="#0000bb">summary</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">'Script output'</font>
																		</font>
																</font>
																<font face="Arial" color="#007700" size="2">&gt;
<br />......</font>
																<font face="Arial" color="#0000bb" size="2">此处省略
<br /><br /></font>
																<font face="Arial" color="#dd0000" size="2">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; spool off
</font>
														</font>
												</code>
												<font face="Arial" size="2">
														<hr />
												</font>
										</pre>
								</blockquote>
								<p>
										<br />
										<br />
										<font face="Arial" size="2">查看生成的emp.htm文件的内容:<br /></font>
								</p>
								<blockquote>
										<pre>
												<font face="Arial" size="2">代码:<hr /></font>
												<code>
														<font color="#000000">
																<font color="#0000bb">
																		<br />
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&lt;</font>
																				<font color="#0000bb">html</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">head</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">meta http</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">equiv</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">"Content-Type" </font>
																				<font color="#0000bb">content</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">"text/html; charset=WINDOWS-936"</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">meta name</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">"generator" </font>
																				<font color="#0000bb">content</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">"SQL*Plus 9.2.0"</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">style type</font>
																				<font color="#007700">=</font>
																				<font color="#dd0000">'text/css'</font>
																				<font color="#007700">&gt; </font>
																				<font color="#0000bb">body </font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">10pt Arial</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">black</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">background</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">White</font>
																				<font color="#007700">;} </font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#0000bb">p 
<br /></font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">10pt Arial</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">black</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">background</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">White</font>
																				<font color="#007700">;} </font>
																				<font color="#0000bb">table</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">tr</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">td </font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">10pt Arial</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">,
<br /></font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">Black</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">background</font>
																				<font color="#007700">:</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#f7f7e7; padding:0px 0px 0px 0px; margin:0px 0px 0px 0px;} 
<br /></font>
																				<font color="#0000bb">th </font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">bold 10pt Arial</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#336699; background:#cccc99; padding:0px 0px 0px 0px;} 
<br /></font>
																				<font color="#0000bb">h1 </font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">16pt Arial</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Geneva</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#336699; background-color:White; 
<br /></font>
																				<font color="#0000bb">border</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">bottom</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">1px solid </font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#cccc99; margin-top:0pt; margin-bottom:0pt; padding:0px 0px 0px 0px;} 
<br /></font>
																				<font color="#0000bb">h2 </font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">bold 10pt Arial</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Geneva</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#336699; background-color:White; 
<br /></font>
																				<font color="#0000bb">margin</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">top</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">4pt</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">margin</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">bottom</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">0pt</font>
																				<font color="#007700">;} </font>
																				<font color="#0000bb">a </font>
																				<font color="#007700">{</font>
																				<font color="#0000bb">font</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">9pt Arial</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">Helvetica</font>
																				<font color="#007700">,</font>
																				<font color="#0000bb">sans</font>
																				<font color="#007700">-</font>
																				<font color="#0000bb">serif</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">color</font>
																				<font color="#007700">:</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#663300; 
<br /></font>
																				<font color="#0000bb">background</font>
																				<font color="#007700">:</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#ff8000">#ffffff; margin-top:0pt; margin-bottom:0pt; vertical-align:top;}&lt;/style&gt;
<br /></font>
																				<font color="#007700">&lt;</font>
																				<font color="#0000bb">title</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">SQL</font>
																				<font color="#007700">*</font>
																				<font color="#0000bb">Plus Report</font>
																				<font color="#007700">&lt;/</font>
																				<font color="#0000bb">title</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;/</font>
																				<font color="#0000bb">head</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;</font>
																				<font color="#0000bb">body</font>
																		</font>
																</font>
																<font face="Arial" color="#007700" size="2">&gt;
<br /></font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; /
<br />&lt;br&gt;
<br />&lt;p&gt;
<br />&lt;table border='1' width='90%' align='center' summary='Script output'&gt;
<br />&lt;tr&gt;
<br />&lt;th scope="</font>
																				<font color="#0000bb">col</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />EMPNO
<br />&lt;/th&gt;
<br />&lt;th scope="</font>
																				<font color="#0000bb">col</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />ENAME
<br />&lt;/th&gt;
<br />&lt;/tr&gt;
<br />&lt;tr&gt;
<br />&lt;td align="</font>
																				<font color="#0000bb">right</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />7369
<br />&lt;/td&gt;
<br />&lt;td&gt;
<br />SMITH
<br />&lt;/td&gt;
<br />&lt;/tr&gt;
<br />&lt;tr&gt;
<br />&lt;td align="</font>
																				<font color="#0000bb">right</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />7499
<br />&lt;/td&gt;
<br />&lt;td&gt;
<br />ALLEN
<br />&lt;/td&gt;
<br />&lt;/tr&gt;
<br />&lt;/table&gt;
<br />&lt;p&gt;
<br /><br />"</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">&amp;</font>
																				<font color="#0000bb">gt</font>
																				<font color="#007700">; </font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#0000bb">spool off
<br /></font>
																				<font color="#007700">&lt;</font>
																				<font color="#0000bb">br</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;/</font>
																				<font color="#0000bb">body</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br />&lt;/</font>
																				<font color="#0000bb">html</font>
																		</font>
																</font>
																<font face="Arial" color="#007700" size="2">&gt;<br /></font>
														</font>
												</code>
												<font face="Arial" size="2">
														<hr />
												</font>
										</pre>
								</blockquote>
								<p>
										<br />
										<font face="Arial" size="2">用ie打开emp.htm文件后的样式如下:<br /><br /></font>
										<a href="http://blog.itpub.net/resserver.php?blogId=6&amp;resource=sqlplushtml.JPG" target="_blank">
												<font face="Arial" size="2">http://blog.itpub.net/resserver.php?blogId=6&amp;resource=sqlplushtml.JPG</font>
										</a>
										<font face="Arial" size="2">
												<br />
												<br />现在看看spool off的情况下:<br /></font>
								</p>
								<blockquote>
										<pre>
												<font face="Arial" size="2">代码:<hr /></font>
												<code>
														<font color="#000000">
																<font color="#0000bb">
																		<br />
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; set markup html on spool off
<br />&lt;br&gt;
<br />"</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">&amp;</font>
																				<font color="#0000bb">gt</font>
																				<font color="#007700">; </font>
																				<font color="#0000bb">spool c</font>
																				<font color="#007700">:</font>
																				<font color="#0000bb">emp2</font>
																				<font color="#007700">.</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#0000bb">htm
<br /></font>
																				<font color="#007700">&lt;</font>
																				<font color="#0000bb">br</font>
																		</font>
																</font>
																<font face="Arial" color="#007700" size="2">&gt;
<br /></font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; /
<br />&lt;br&gt;
<br />&lt;p&gt;
<br />&lt;table border='1' width='90%' align='center' summary='Script outpu
<br />......此处省略
<br />"</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">&amp;</font>
																				<font color="#0000bb">gt</font>
																				<font color="#007700">; </font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#0000bb">spool off
<br /></font>
																				<font color="#007700">&lt;</font>
																				<font color="#0000bb">br</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#007700">&gt;
<br /></font>
																				<font color="#dd0000">"&gt;scott@O9I.US.OR</font>
																		</font>
																</font>
														</font>
												</code>
												<font face="Arial" size="2">
														<hr />
												</font>
										</pre>
								</blockquote>
								<p>
										<br />
										<font face="Arial" size="2">查看生成的emp2.htm文件的内容:<br /><br /></font>
								</p>
								<blockquote>
										<pre>
												<font face="Arial" size="2">代码:<hr /></font>
												<code>
														<font color="#000000">
																<font color="#0000bb">
																		<br />
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;scott@O9I.US.ORACLE.COM&amp;gt; /
<br />&lt;br&gt;
<br />&lt;p&gt;
<br />&lt;table border='1' width='90%' align='center' summary='Script output'&gt;
<br />&lt;tr&gt;
<br />&lt;th scope="</font>
																				<font color="#0000bb">col</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />EMPNO
<br />&lt;/th&gt;
<br />&lt;th scope="</font>
																				<font color="#0000bb">col</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />ENAME
<br />&lt;/th&gt;
<br />&lt;/tr&gt;
<br />&lt;tr&gt;
<br />&lt;td align="</font>
																				<font color="#0000bb">right</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />7369
<br />&lt;/td&gt;
<br />&lt;td&gt;
<br />SMITH
<br />&lt;/td&gt;
<br />&lt;/tr&gt;
<br />&lt;tr&gt;
<br />&lt;td align="</font>
																				<font color="#0000bb">right</font>
																		</font>
																</font>
																<font face="Arial">
																		<font size="2">
																				<font color="#dd0000">"&gt;
<br />7499
<br />&lt;/td&gt;
<br />&lt;td&gt;
<br />ALLEN
<br />&lt;/td&gt;
<br />&lt;/tr&gt;
<br />&lt;/table&gt;
<br />&lt;p&gt;
<br /><br />"</font>
																				<font color="#007700">&gt;</font>
																				<font color="#0000bb">scott</font>
																				<font color="#007700">@</font>
																				<font color="#0000bb">O9I</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">US</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">ORACLE</font>
																				<font color="#007700">.</font>
																				<font color="#0000bb">COM</font>
																				<font color="#007700">&amp;</font>
																				<font color="#0000bb">gt</font>
																				<font color="#007700">; </font>
																		</font>
																</font>
																<font color="#c0b0fa" verdana,="" arial,="" helvetica?="">
																		<br />
																</font>
																<blockquote>
																		<pre>
																				<font face="Arial" size="2">代码:<hr /></font>
																				<code>
																						<font color="#000000">
																								<font color="#0000bb">
																								</font>
																						</font>
																				</code>
																				<font face="Arial" size="2">
																						<hr />
																				</font>
																		</pre>
																</blockquote>
																<br />
																<br />
																<font face="Arial" size="2">由于这段代码中没有html文件头, 所以我们可以直接作为内容插入到网页中.<br /><br />
总结: 如果要生成一个完整的html文件, 就使用spool on选项, 如果只是要内容部分(用来添加到一个现有的网页中), 那么就使用spool off选项.<br /><br />
另外, set markup html还有很多选项可以用来定制生成的html的各个部分, 例如head, body, table等, 这里不再逐一说明, 详细信息可以参考SQL*Plus User's Guide and Reference.<br /><br />
适用场景: 当需要定时更新一个从数据库中获取内容的静态页面时, 这种方法绝对是快捷的并且容易实现的.<br /><br />
(需要引用, 请注明出处: </font>
																<a href="http://blog.itpub.net/oldwain" target="_blank">
																		<font face="Arial" size="2">http://blog.itpub.net/oldwain</font>
																</a>
																<font face="Arial" size="2">)</font>
														</font>
												</code>
										</pre>
								</blockquote>
						</span>
				</p>
				<p>
						<font face="Arial" size="2">
						</font>
				</p>
		</span>
<img src ="http://www.blogjava.net/ioriqw/aggbug/43480.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ioriqw/" target="_blank">崛起的程序员</a> 2006-04-27 10:03 <a href="http://www.blogjava.net/ioriqw/articles/43480.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用PL/SQL从数据库中读取BLOB对象</title><link>http://www.blogjava.net/ioriqw/articles/43470.html</link><dc:creator>崛起的程序员</dc:creator><author>崛起的程序员</author><pubDate>Thu, 27 Apr 2006 01:25:00 GMT</pubDate><guid>http://www.blogjava.net/ioriqw/articles/43470.html</guid><wfw:comment>http://www.blogjava.net/ioriqw/comments/43470.html</wfw:comment><comments>http://www.blogjava.net/ioriqw/articles/43470.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ioriqw/comments/commentRss/43470.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ioriqw/services/trackbacks/43470.html</trackback:ping><description><![CDATA[
		<h3>
				<font size="2">使用PL/SQL从数据库中读取BLOB对象</font>
		</h3>
		<font size="2">作者:eygle<br />出处:</font>
		<a href="http://www.eygle.com/blog">
				<font size="2">http://www.eygle.com/blog</font>
		</a>
		<br />
		<font size="2">日期:April 30, 2005<br />浏览次数:
<script language="Javascript" src="http://www.eygle.com/cntall.php" type="text/javascript"></script>
 507<br />本文链接:</font>
		<a href="http://www.eygle.com/archives/2005/04/eoaplsqloeaoeae.html">
				<font size="2">http://www.eygle.com/archives/2005/04/eoaplsqloeaoeae.html</font>
		</a>
		<br />
		<p align="left">
				<a href="http://www.eygle.com/archives/2005/04/eoaiplsqlieoeao.html">
						<font size="2">« 使用存储过程(PL/SQL)向数据库中存储BLOB对象</font>
				</a>
				<font size="2"> | </font>
				<a href="http://www.eygle.com/blog/">
						<font size="2">Blog首页</font>
				</a>
				<font size="2"> | </font>
				<a href="http://www.eygle.com/archives/2005/05/ioaeeui.html">
						<font size="2">五一的生活 »</font>
				</a>
				<font size="2">
				</font>
		</p>
		<font size="2">
				<hr align="center" noshade="" size="1" />
				<strong>注意：本文方法仅适用于Oracle10g，由于在Oracle9i中存在Bug，不能使用此方法。</strong>
				<br />在Oracle9i中，可以通过java/c编码实现，但是可能在目标文件名为中文时存在问题。<br />1.确认现有对象</font>
		<br />
		<table>
				<tbody>
						<tr>
								<td width="500" bgcolor="#999999">
										<pre>SQL&gt; col fdesc for a30
SQL&gt; select fid,fname,fdesc from eygle_blob;

       FID FNAME                                              FDESC
---------- -------------------------------------------------- ------------------------------
         1 ShaoLin.jpg                                        少林寺-康熙手书
         2 DaoYing.jpg                                        倒映
</pre>
								</td>
						</tr>
				</tbody>
		</table>
		<br />2.创建存储Directory<br /><table><tbody><tr><td width="500" bgcolor="#999999"><pre>SQL&gt; connect / as sysdba
Connected.
SQL&gt; create or replace directory BLOBDIR as 'D:\oradata\Pic';

Directory created.

SQL&gt;
SQL&gt; grant read,write on directory BLOBDIR to eygle;

Grant succeeded.

SQL&gt;
</pre></td></tr></tbody></table><br /><div id="a000165more"><div id="more">3.创建存储过程<br /><table><tbody><tr><td width="500" bgcolor="#999999"><pre>SQL&gt; connect eygle/eygle
Connected.
SQL&gt;
SQL&gt; CREATE OR REPLACE PROCEDURE eygle_dump_blob (piname varchar2,poname varchar2) IS
  2    l_file      UTL_FILE.FILE_TYPE;
  3    l_buffer    RAW(32767);
  4    l_amount    BINARY_INTEGER := 32767;
  5    l_pos       INTEGER := 1;
  6    l_blob      BLOB;
  7    l_blob_len  INTEGER;
  8  BEGIN
  9    SELECT FPIC
 10    INTO      l_blob
 11    FROM      eygle_blob
 12    WHERE  FNAME = piname;
 13
 14    l_blob_len := DBMS_LOB.GETLENGTH(l_blob);
 15    l_file := UTL_FILE.FOPEN('BLOBDIR',poname,'wb', 32767);
 16
 17    WHILE l_pos &lt; l_blob_len LOOP
 18      DBMS_LOB.READ (l_blob, l_amount, l_pos, l_buffer);
 19      UTL_FILE.PUT_RAW(l_file, l_buffer, TRUE);
 20      l_pos := l_pos + l_amount;
 21    END LOOP;
 22
 23    UTL_FILE.FCLOSE(l_file);
 24
 25  EXCEPTION
 26    WHEN OTHERS THEN
 27      IF UTL_FILE.IS_OPEN(l_file) THEN
 28        UTL_FILE.FCLOSE(l_file);
 29      END IF;
 30      RAISE;
 31  END;
 32  /

Procedure created.
</pre></td></tr></tbody></table><br />4.取出数据<br /><table><tbody><tr><td width="500" bgcolor="#999999"><pre>SQL&gt; host ls -l d:\oradata\Pic
total 7618
-rwxrwxrwa   1 gqgai           None            2131553 Apr 19 10:12 DaoYing.jpg
-rwxrwxrwa   1 gqgai           None            1768198 Apr 19 10:12 ShaoLin.jpg

SQL&gt; exec eygle_dump_blob('ShaoLin.jpg','01.jpg')

PL/SQL procedure successfully completed.

SQL&gt; host ls -l d:\oradata\Pic
total 11072
-rwxrwxrwa   1 Administrators  SYSTEM          1768198 Apr 26 07:16 01.jpg
-rwxrwxrwa   1 gqgai           None            2131553 Apr 19 10:12 DaoYing.jpg
-rwxrwxrwa   1 gqgai           None            1768198 Apr 19 10:12 ShaoLin.jpg

SQL&gt;
SQL&gt; exec eygle_dump_blob('DaoYing.jpg','02.jpg')

PL/SQL procedure successfully completed.

SQL&gt; host ls -l d:\oradata\Pic
total 15236
-rwxrwxrwa   1 Administrators  SYSTEM          1768198 Apr 26 07:16 01.jpg
-rwxrwxrwa   1 Administrators  SYSTEM          2131553 Apr 26 07:19 02.jpg
-rwxrwxrwa   1 gqgai           None            2131553 Apr 19 10:12 DaoYing.jpg
-rwxrwxrwa   1 gqgai           None            1768198 Apr 19 10:12 ShaoLin.jpg

</pre></td></tr></tbody></table><br /></div></div><img src ="http://www.blogjava.net/ioriqw/aggbug/43470.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ioriqw/" target="_blank">崛起的程序员</a> 2006-04-27 09:25 <a href="http://www.blogjava.net/ioriqw/articles/43470.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>