﻿<?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-壹咪阳光-随笔分类-1-oracle/mysql/sql</title><link>http://www.blogjava.net/ywj-316/category/42587.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 21 Oct 2010 18:51:13 GMT</lastBuildDate><pubDate>Thu, 21 Oct 2010 18:51:13 GMT</pubDate><ttl>60</ttl><item><title>oracle游标</title><link>http://www.blogjava.net/ywj-316/archive/2010/07/29/327488.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Thu, 29 Jul 2010 09:13:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2010/07/29/327488.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/327488.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2010/07/29/327488.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/327488.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/327488.html</trackback:ping><description><![CDATA[<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #008080">--</span><span style="color: #008080">SQL游标</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">游标：是指向上下文区的指针</span><span style="color: #008080"><br />
<img id="Codehighlighter1_24_494_Open_Image" onclick="this.style.display='none'; Codehighlighter1_24_494_Open_Text.style.display='none'; Codehighlighter1_24_494_Closed_Image.style.display='inline'; Codehighlighter1_24_494_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_24_494_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_24_494_Closed_Text.style.display='none'; Codehighlighter1_24_494_Open_Image.style.display='inline'; Codehighlighter1_24_494_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span id="Codehighlighter1_24_494_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_24_494_Open_Text"><span style="color: #008080">/*</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;1&nbsp;隐含游标<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;隐含游标又称SQL游标，专门用于处理SELECT&nbsp;INTO，INSERT，UPDATE及DELETE语句，当在PL/SQL中执行<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;INSERT，UPDATE及DELETE时，为取得DML语句作用的结果，必须要使用SQL游标属性，SQL游标包括sql%found,<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;sql%notfound,sql%rowcount,sql%isopen四个属性。<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;（1）sql%isopen&nbsp;用日元确定SQL游标是否已经打开，当执行SELECT&nbsp;INTO，INSERT，UPDATE及DELETE语句时会隐<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;含打开游标，并且在执行完成后隐含关闭游标。所以对于开发人员该属性永远为false,不需要使用该属性。<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;（2）sql%found/sql%notfound&nbsp;用于确定SQL语句执行是否成功。<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SQL语句执行是否成功根据是否有作用来判断，当SQL语句有作用时，sql%found属性值为TRUE(sql%notfound属性值为FALSE)；否则反之。</span><span style="color: #008080">*/</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_name&nbsp;user_info.name</span><span style="color: #808080">%</span><span style="color: #000000">type&nbsp;:</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #808080">*</span><span style="font-weight: bold; color: #800000">1.1</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;name</span><span style="color: #808080">=</span><span style="color: #000000">v_name;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;sql</span><span style="color: #808080">%</span><span style="color: #000000">found&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">语句执行成功</span><span style="color: #ff0000">'</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">用户名不存在</span><span style="color: #ff0000">'</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;（3）sql%rowcount&nbsp;返回SQL语句作用的总计行数</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;v_name&nbsp;user_info.name</span><span style="color: #808080">%</span><span style="color: #000000">type&nbsp;:</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #808080">*</span><span style="font-weight: bold; color: #800000">1.1</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;name</span><span style="color: #808080">=</span><span style="color: #000000">v_name;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">修改了</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">sql</span><span style="color: #808080">%</span><span style="color: #0000ff">rowcount</span><span style="color: #808080">||</span><span style="color: #ff0000">'</span><span style="color: #ff0000">行</span><span style="color: #ff0000">'</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img id="Codehighlighter1_1097_1127_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1097_1127_Open_Text.style.display='none'; Codehighlighter1_1097_1127_Closed_Image.style.display='inline'; Codehighlighter1_1097_1127_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1097_1127_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1097_1127_Closed_Text.style.display='none'; Codehighlighter1_1097_1127_Open_Image.style.display='inline'; Codehighlighter1_1097_1127_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span id="Codehighlighter1_1097_1127_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_1097_1127_Open_Text"><span style="color: #008080">/*</span><span style="color: #008080">2&nbsp;显式游标<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用于处理SELECT语句<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" /></span><span style="color: #008080">*/</span></span></div>
<img src ="http://www.blogjava.net/ywj-316/aggbug/327488.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2010-07-29 17:13 <a href="http://www.blogjava.net/ywj-316/archive/2010/07/29/327488.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle控制语句</title><link>http://www.blogjava.net/ywj-316/archive/2010/07/29/327487.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Thu, 29 Jul 2010 09:12:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2010/07/29/327487.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/327487.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2010/07/29/327487.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/327487.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/327487.html</trackback:ping><description><![CDATA[<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #008080">--</span><span style="color: #008080">控制语句</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">if</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;condition&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />elsif&nbsp;condition&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">else</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">case</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #ff00ff">case</span><span style="color: #000000">&nbsp;v_no<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">20</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">30</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">else</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">case</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">------------</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #ff00ff">case</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;v_no</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">30</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;v_no</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">20</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;v_no</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">case</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">loop</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">exit</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;condition;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">while</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;condition&nbsp;loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">for</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;</span><span style="color: #ff0000">[</span><span style="color: #ff0000">reverse</span><span style="color: #ff0000">]</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_start..v_end&nbsp;loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;statements;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">i是循环控制变量，不需要显式定义，v_start,v_end分别为下界值和上界值。如果指定reverse则循环变量自动减一。</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">reverse</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">..</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">&nbsp;loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;dbms_output.put_line(i);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">10,9,8,7,6,5,4,3,2,1</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">嵌套循环</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;result&nbsp;</span><span style="font-weight: bold; color: #000000">int</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">&lt;&lt;</span><span style="color: #0000ff">outer</span><span style="color: #808080">&gt;&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">..</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">&nbsp;loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">&lt;&lt;</span><span style="color: #0000ff">inner</span><span style="color: #808080">&gt;&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;j&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">..</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">&nbsp;loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result:</span><span style="color: #808080">=</span><span style="color: #000000">i</span><span style="color: #808080">*</span><span style="color: #000000">j;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">exit</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">outer</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;i</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">9</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dbms_output.put_line(i</span><span style="color: #808080">||</span><span style="color: #000000">j);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop&nbsp;</span><span style="color: #0000ff">inner</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop&nbsp;</span><span style="color: #0000ff">outer</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;</span></div>
<img src ="http://www.blogjava.net/ywj-316/aggbug/327487.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2010-07-29 17:12 <a href="http://www.blogjava.net/ywj-316/archive/2010/07/29/327487.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle函数大全</title><link>http://www.blogjava.net/ywj-316/archive/2010/07/28/327354.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Wed, 28 Jul 2010 10:22:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2010/07/28/327354.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/327354.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2010/07/28/327354.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/327354.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/327354.html</trackback:ping><description><![CDATA[<style type="text/css">
.tt {
font-weight: bold;
font-size: 16px;
color: #F00;
}
</style>
<style type="text/css">
<!--
.t2 {
 color: #00F;
 font-weight: bold;
 font-size: 24px;
}
-->
</style>
<p class="t2"><span style="font-size: 18pt; color: #0000ff"><strong>数字函数</strong></span></p>
<p><span class="tt">1.1、ABS(n)函数</span><br />
描述：返回数值n的绝对值。</p>
<p>Examples：select abs(-15) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.2、ACOS(n)函数</span><br />
描述：返回数值n的反余弦值。输入数值范围在-1~1之间，返回值为弧度。</p>
<p>Examples：select acos(0.6) &#8220;test&#8221;,acos(-.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.3、COS(n)函数</span><br />
描述: 返回数值n的余弦值。返回值为弧度。</p>
<p>Examples：select cos(1.6) &#8220;test&#8221;,cos(-6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.4、SIN(n)函数</span><br />
描述: 返回数值n的正弦值。</p>
<p>Examples：select sin(1.6) &#8220;test&#8221;,sin(-6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.5、ASIN(n)函数</span><br />
描述: 返回数值n的反正弦值。输入数值范围在-1~1之间，返回值为弧度。</p>
<p>Examples：select asin(0.6) &#8220;test&#8221;,asin(-0.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.6、TAN(n)函数</span><br />
描述: 返回数值n的正切值。</p>
<p>Examples：select tan(6) &#8220;test&#8221;,tan(-0.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.7、ATAN(n)函数</span><br />
描述: 返回数值n的反正切值。输入数值任意，返回值为弧度。</p>
<p>Examples：select atan(6) &#8220;test&#8221;,atan(-0.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.8、ATAN2(n,m)函数</span><br />
描述: 返回数值n/m的反正切值。输入数值任意，返回值为弧度。</p>
<p>Examples：select atan2(19,3) &#8220;test&#8221;,atan2(-9,-0.9) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.9、SINH(n)函数</span><br />
描述: 返回数值n的双曲正弦值。输入数值任意。</p>
<p>Examples：select sinh(6) &#8220;test&#8221;,sinh(-0.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.10、TANH(n)函数</span><br />
描述: 返回数值n的双曲正切值。输入数值任意。</p>
<p>Examples：select tanh(6) &#8220;test&#8221;,tanh(-0.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.11、CEIL(n)函数</span><br />
描述: 返回大于等于数值n的最小整数。</p>
<p>Examples：select ceil(6) &#8220;test&#8221;,ceil(6.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.12、COSH(n)函数</span><br />
描述: 返回数值n的双曲余弦值。</p>
<p>Examples：select cosh(6) &#8220;test&#8221;,cosh(6.6) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.13、EXP(n)函数</span><br />
描述: 返回e的n次冥。(e=2.71828183&#8230;)</p>
<p>Examples：select exp(6) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.14、FLOOR(n)函数</span><br />
描述: 返回小于等于数值n的最大整数。</p>
<p>Examples：select floor(6) &#8220;test&#8221;,floor(9.3) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">1.15、LN(n)函数</span><br />
描述: 返回数值n的自然对数。(n必须大于0)</p>
<p>Examples：select ln(6) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.16、LOG(m,n)函数</span><br />
描述: 返回以m为底的数值n的对数。(m&gt;1,n&gt;0)</p>
<p>Examples：select log(6,3) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.17、MOD(m,n)函数</span><br />
描述: 返回m/n后的余数，若n=0，则返回m（求模运算）</p>
<p>Examples：select mod(6,3) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.18、POWER(m,n)函数</span><br />
描述: 返回m的n次冥</p>
<p>Examples：select power(6,3) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.19、ROUND(n,[m])函数</span><br />
描述: 执行四舍五入运算，m可以省略，当省略m时，四舍五入到整数位；当m为正数时，四舍五入到小数点后m位；当m为负数时，四舍五入到小数点前m位。</p>
<p>Examples：select round(6.698,2) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.20、SIGN(n)函数</span><br />
描述: 检测数值的正负，当n&lt;0则返回-1；当n&gt;0则返回1，当n=0返回0。</p>
<p>Examples：select sign(6.698) &#8220;test&#8221;,sign(-9) &#8220;test1&#8221;,sign(0) &#8220;test2&#8221; from dual;</p>
<p><span class="tt">1.21、SQRT(n)函数</span><br />
描述: 返回数值n的平方根。(n&gt;=0)</p>
<p>Examples：select sqrt(6.698) &#8220;test&#8221; from dual;</p>
<p><span class="tt">1.22、TRUNC(n,[m])函数</span><br />
描述: 截取数值n,m可以省略，当省略m时则截取n的小数部分；当m为正数时则将n截取到小数点后m位；当m为负数时则将n截取到小数点前m位</p>
<p>Examples：select trunc(6.698,2) &#8220;test&#8221;,trunk(696.3,-2) &#8220;test1&#8221; from dual;</p>
<p class="t2"><span style="font-size: 24pt; color: #0000ff"><strong>字符函数</strong></span></p>
<p><br />
说明：字符函数输入值为字符类型，返回值为字符类型或数字类型，可以在sql语句中直接使用，也可以在pl/sql块中使用。</p>
<p><span class="tt">2.1、ASCII(n)函数</span><br />
描述: 返回字符串的ascii码(当输入为字符串时返回第一个字符的ascii码)</p>
<p>Examples：select ascii(&#8216;A&#8217;) &#8220;test&#8221;,ascii(&#8216;我们&#8217;) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">2.2、CHR(n)函数</span><br />
描述: 返回对应的ascii码的字符(n必须为数字类型)</p>
<p>Examples：select ascii(54992) &#8220;test&#8221; from dual;</p>
<p><span class="tt">2.3、CONCAT(n,m)函数</span><br />
描述: 连接n和m，n和m可以是字符，也可以是字符串。作用和&#8221;||&#8221;一样。</p>
<p>Examples：select concat(&#8216;中国&#8217;,&#8217;人民&#8217;) &#8220;test&#8221; from dual;</p>
<p><span class="tt">2.4、INITCAP(n)函数</span><br />
描述: 将字符串n中每个单词首字母大写，其余小写(区分单词的规则是按空格或非字母字符；可以输入中文字符，但没有任何作用)</p>
<p>Examples：select initcap(&#8216;中 国 人 民&#8217;) &#8220;test&#8221;,initcap(&#8216;my word&#8217;) &#8220;test1&#8221;,initcap(&#8216;my中国word&#8217;) &#8220;test2&#8221; from dual;</p>
<p><span class="tt">2.5、INSTR(chr1,chr2,[n,[m]])函数</span><br />
描述: 获取字符串chr2在字符串chr1中出现的位置。n和m可选,省略是默认为1；n代表开始查找的起始位置，当n为负数从尾部开始搜索；m代表字串出现的次数。</p>
<p>Examples：select instr('pplkoopijk','k',-1,1) &#8220;test&#8221; from dual;</p>
<p>备注：当n为负数从尾部搜索，但返回值仍然是按正向排列得出的位置。</p>
<p><span class="tt">2.6、LENGTH(n)函数</span><br />
描述: 返回字符或字符串长度。(当n为null时，返回nll；返回的长度包括后面的空格)</p>
<p>Examples：select length('ppl ') &#8220;test&#8221;,length(null) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">2.7、LOWER(n)函数</span><br />
描述: 将n转换为小写。</p>
<p>Examples：select lower('KKKD') &#8220;test&#8221; from dual;</p>
<p><span class="tt">2.8、LPAD(chr1,n,[chr2])函数</span><br />
描述: 在chr1左边填充字符chr2，使得字符总长度为n。chr2可选，默认为空格；当chr1字符串长度大于n时，则从左边截取chr1的n个字符显示。</p>
<p>Examples：select lpad('kkk',5) &#8220;test&#8221;,lpad(&#8216;kkkkk&#8217;,4) &#8220;test1&#8221;,lpad(&#8216;kkk&#8217;,6,&#8217;lll&#8217;) &#8220;test2&#8221; from dual;</p>
<p><span class="tt">2.9、LTRIM(chr,[n])函数</span><br />
描述: 去掉字符串chr左边包含的n字符串中的任何字符，直到出现一个不包含在n中的字符为止。</p>
<p>Examples：select ltrim('abcde',&#8217;a&#8217;) &#8220;test&#8221;,ltrim(&#8216;abcde&#8217;,&#8217;b&#8217;) &#8220;test1&#8221;,ltrim(&#8216;abcdefg&#8217;,&#8217;cba&#8217;) &#8220;test2&#8221; from dual;</p>
<p><span class="tt">2.10、NLS_INITCAP(chr,[&#8217;nls_param&#8217;])函数</span><br />
描述: 将chr首字母大写。Nls_param可选，指定排序的方式。（有SCHINESE_RADICAL_M（部首、笔画），SCHINESE_STROKE_M（笔画、部首），SCHINESE_PINYIN_M（拼音））</p>
<p>Examples：select nls_initcap('ab cde') &#8220;test&#8221;,nls_initcap(&#8216;a b c d e&#8217;,&#8217;nls_sort= SCHINESE_PINYIN_M&#8217;) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">2.11、NLS_LOWER(chr,[&#8216;nls_param&#8217;])函数</span><br />
描述: 将字符串转换为小写。Nls_param可选，指定排序的方式。（有SCHINESE_RADICAL_M（部首、笔画），SCHINESE_STROKE_M（笔画、部首），SCHINESE_PINYIN_M（拼音））</p>
<p>Examples：select nls_lower('ABC') &#8220;test&#8221;,nls_lower(&#8216;ABC&#8217;,&#8217;nls_sort= SCHINESE_PINYIN_M&#8217;) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">2.12、NLSSORT(col,[&#8217;nls_param&#8217;])函数</span><br />
描述: 根据nls_param指定的方式对col字段进行排序。</p>
<p>Examples：SELECT part_number FROM cux_om_part_all ORDER BY nlssort(part_number,'nls_sort=SCHINESE_RADICAL_M')</p>
<p><span class="tt">2.13、NLS_UPPER(chr,[&#8216;nls_param&#8217;])函数</span><br />
描述: 将chr转换为大写。Nls_param可选，用于指定排序规则</p>
<p>Examples：SELECT nls_upper('ddddd','nls_sort=xdanish') FROM dual</p>
<p><span class="tt">2.14、REGEXP_REPLACE(source_string,pattern,replace_string,position,occurtence,match_parameter)函数(10g新函数)</span><br />
描述:字符串替换函数。相当于增强的replace函数。Source_string指定源字符表达式；pattern指定规则表达式；replace_string指定用于替换的字符串；position指定起始搜索位置；occurtence指定替换出现的第n个字符串；match_parameter指定默认匹配操作的文本串。</p>
<p>其中replace_string,position,occurtence,match_parameter参数都是可选的。</p>
<p><span class="tt">2.15、REGEXP_SUBSTR(source_string, pattern[,position [, occurrence[, match_parameter]]])函数(10g新函数)</span><br />
描述：返回匹配模式的子字符串。相当于增强的substr函数。Source_string指定源字符表达式；pattern指定规则表达式；position指定起始搜索位置；occurtence指定替换出现的第n个字符串；match_parameter指定默认匹配操作的文本串。</p>
<p>其中position,occurtence,match_parameter参数都是可选的</p>
<p>Examples:select regexp_substr(&#8216;http://www.oracle.com/products&#8217;,&#8217;http://([[:alnum:]]+\.?) {3,4} / ?&#8217;) &#8220;regexp_substr&#8221; from dual</p>
<p><span class="tt">2.16、REGEXP_LIKE(source_string, pattern</span><br />
[, match_parameter])函数(10g新函数)<br />
描述：返回满足匹配模式的字符串。相当于增强的like函数。Source_string指定源字符表达式；pattern指定规则表达式；match_parameter指定默认匹配操作的文本串。</p>
<p>其中position,occurtence,match_parameter参数都是可选的</p>
<p>Examples:</p>
<p><span class="tt">2.17、REGEXP_INSTR(source_string, pattern<br />
[, start_position<br />
[, occurrence<br />
[, return_option<br />
[, match_parameter]]]])函数(10g新函数)</span><br />
描述: 该函数查找 pattern ，并返回该模式的第一个位置。您可以随意指定您想要开始搜索的 start_position。 occurrence 参数默认为 1，除非您指定您要查找接下来出现的一个模式。return_option 的默认值为 0，它返回该模式的起始位置；值为 1 则返回符合匹配条件的下一个字符的起始位置</p>
<p>Examples:</p>
<p>&nbsp;</p>
<p>附注：上面红色标题的四个函数是oracle 10g才有的函数，使用正则表达式可以实现很强大的功能。鉴于变化太多，可以参考oracle的官方文档：SQL Reference(第七章)<br />
<span class="tt">2.18、REPLACE(chr,search_string,[,replacement_string])函数</span><br />
描述:将chr中满足search_string条件的替换为replacement_string指定的字符串，当search_string为null时，返回chr；当replacement_string为null时，返回chr中截取掉search_string部分的字符串。</p>
<p>Examples: SELECT REPLACE('abcdeef','e','oo') "test",REPLACE('abcdeef','ee','oo') "test1",REPLACE('abcdeef',NULL,'oo') "test2",REPLACE('abcdeef','ee',NULL) "test3" FROM dual</p>
<p><span class="tt">2.19、RPAD(chr1,n,chr2)函数</span><br />
描述：在chr1右边填充chr2，使返回字符串长度为n..当chr1长度大于n时，返回左端n个字符。参考LPAD()函数。</p>
<p><span class="tt">2.20、RTRIM(chr,[set])函数</span><br />
描述：去掉chr右边包含的set中的任何字符，直到出现一个不是set中的字符结束。参考LTRIM()函数。</p>
<p><span class="tt">2.21、SOUNDEX(chr)函数</span><br />
描述：返回字符串的语音表示，可以用来比较字符串的发音是否相同。</p>
<p>Examples:select soundex(&#8216;ship&#8217;) &#8220;test&#8221;,soundex(&#8216;sleep&#8217;) &#8220;test1&#8221; from dual;</p>
<p><span class="tt">2.22、SUBSTR(chr,m[,n])函数</span><br />
描述：取chr的子串。M代表开始位置，n是要取的长度。当m为0时从首字符开始，当m为负时从字符串尾部开始截取。</p>
<p>Examples:select substr(&#8216;abcdef&#8217;,0,3) &#8220;test&#8221;,substr(&#8216;abcdef&#8217;,1,3) &#8220;test1&#8221;,substr(&#8216;abcdef&#8217;,-3,3) &#8220;test2&#8221;,substr(&#8216;abcdef&#8217;,-1,3) &#8220;test3&#8221; from dual</p>
<p>注意：m取0或1时，开始位置是一样的，都是从第一位开始，m为负的时候，仍然是按从左到右的顺序取，所以如果m为-1，n的长度再大，也只能取到最后一个字符，因为chr右边已经没有字符了。</p>
<p><span class="tt">2.23、TRANSLATE(chr,from_str,to_str)函数</span><br />
描述：另一种替换函数的用法。</p>
<p>Examples: SELECT translate('abcdeabc','abc','fgh') "test",translate('abcdeabc','abc','hf') "test1",translate('abcdeabc','ab','hfgh') "test2",translate('abcdeabc','abc',' ') "test3" FROM dual</p>
<p>注意：匹配的规则是from_str和to_str每个字符按顺序相对应，如果from_str字符少于to_str中的字符，则只替换能对应的字符，to_str后面不能和from_str对应的字符则不管，如果from_str字符多于to_str字符，则from_str中找不到对应字符按照null来处理。</p>
<p><span class="tt">2.24、TRIM(chr)函数</span><br />
TRIM函数将字符串的前缀（或尾随）字符删除。</p>
<p>其具体的语法格式如下：</p>
<p>TRIM（[LEADING|TRAILING|BOTH][trimchar FROM] string）</p>
<p>其中：</p>
<p>LEADING 指明仅仅将字符串的前缀字符删除</p>
<p>TRAILING 指明仅仅将字符串的尾随字符删除</p>
<p>BOTH 指明既删除前缀字符，也删除尾随字符。这也是默认方式</p>
<p>string 任意一待处理字符串</p>
<p>trimchar 可选项。指明试图删除什么字符，默认被删除的字符是空格</p>
<p>下面是该函数的使用情况：</p>
<p>TRIM（&#8217; Ashley &#8217;）=&#8216;Ashley&#8217;</p>
<p>TRIM（LEADING &#8217;*&#8217; FROM&#8217;***Ashley***&#8217;）=&#8216;Ashley***&#8217;</p>
<p><span class="tt">2.25、UPPER(chr)函数</span><br />
UPPER函数间返回字符串的大写形式。</p>
<p>其具体的语法格式如下：</p>
<p>UPPER（string）</p>
<p>其中：</p>
<p>string 任意VARCHAR2或CHAR型字符串</p>
<p>下面是该函数的使用情况：</p>
<p>UPPER（&#8217;THIS IS a Test&#8217;）=&#8216;THIS IS A TEST&#8217;</p>
<p class="t2"><span style="font-size: 24pt; color: #0000ff"><strong>日期函数</strong></span></p>
<p><span class="tt">3.1、add_months(d,n)</span><br />
说明：用于从一个日期值增加或减少一些月份,d代表一个日期,n为正数则代表在d日期 上增加n月份，n为负数则代表在d日期上减少n月 <br />
例:select add_months(sysdate,12) "Next Year" from dual; <br />
<span class="tt">3.2、current_date()</span></p>
<p>说明:返回当前会话时区中的当前日期时间<br />
alter session set time_zone=&#8217;-11:00&#8217;(更改当前会话时区命令) <br />
例:select sessiontimezone,current_date from dual; <br />
<span class="tt">3.3、dbtimezone()</span></p>
<p>说明:返回数据库实例时区 <br />
select dbtimezone from dual; <br />
<span class="tt">3.4、extract()</span></p>
<p>说明:显示指定格式的日期值。<br />
select extract(month from sysdate) "This Month" from dual; <br />
select extract(year from add_months(sysdate,36)) "3 Years Out" from dual;<br />
<span class="tt">3.5、last_day()</span></p>
<p>说明:返回包含了日期参数的月份的最后一天的日期<br />
select last_day(sysdate) "last" from dual;<br />
<span class="tt">3.6、months_between(d1,d2)</span></p>
<p>说明:返回d1和d2两个月份之间相差的月数，若d1&lt;d2,返回负数；d1&gt;d2，返回正数；若d1和d2都是月底或者天数相同，则返回整数，否则以每月31天为基准数返回小数。<br />
select months_between(to_date('2007-01-31','yyyy-mm-dd'),to_date('2006-11-30','yyyy-mm-dd')) from dual;<br />
<span class="tt">3.7、next_day(d,varchar2)</span></p>
<p>说明:返回日期d指定的在日期d之后的第一个工作日；</p>
<p>SELECT next_day(SYSDATE,'星期四') FROM dual;</p>
<p>Select next_day(sysdate,&#8217;monday&#8217;) from dual; 错误，不能使用英文单词</p>
<p>返回当前日期后的第一个星期四的日期。若当前日期已经是星期四或过了星期四，则返回下周的星期四对应的日期，否则返回本周星期四的日期。</p>
<p>注意：varchar2指定工作日的时候和当前数据库实例的参数设置有关，字符串需要用中文写，如果中文不行，就使用英文星期代表。</p>
<p><span class="tt">3.8、round(d,fmt)</span><br />
说明：返回日期时间的四舍五入结果。如果fmt指定年，则以7月1日为分界；如果指定月，则以16日为分界；关于按天来四舍五入，在测试时无法理解(资料上解释按天的时候是以中午12：00为分界)</p>
<p>Select round(sysdate,&#8217;month&#8217;) from dual;</p>
<p><span class="tt">3.9、trunc(d,fmc)</span><br />
说明：按照指定的格式截断日期，如果指定格式为年，则结果为本年1月1日，如果格式指定为月，则结果为本月1日，关于格式指定为天还未理解。</p>
<p>SELECT trunc(SYSDATE,'month') FROM dual;</p>
<p class="tt">3.10、sysdate</p>
<p><span class="tt">应用： </span><br />
1. 日期和字符转换函数用法（to_date,to_char）<br />
<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual; //日期转化为字符串 <br />
select to_char(sysdate,'yyyy') as nowYear from dual; //获取时间的年 <br />
select to_char(sysdate,'mm') as nowMonth from dual; //获取时间的月 <br />
select to_char(sysdate,'dd') as nowDay from dual; //获取时间的日 <br />
select to_char(sysdate,'hh24') as nowHour from dual; //获取时间的时 <br />
select to_char(sysdate,'mi') as nowMinute from dual; //获取时间的分 <br />
select to_char(sysdate,'ss') as nowSecond from dual; //获取时间的秒</p>
<p><br />
select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') from dual//</p>
<p>2. select to_char( to_date(222,'J'),'Jsp') from dual <br />
<br />
显示Two Hundred Twenty-Two </p>
<p>3.求某天是星期几 <br />
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day') from dual; <br />
星期一 <br />
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual; <br />
monday <br />
设置日期语言 <br />
ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN'; <br />
也可以这样 <br />
TO_DATE ('2002-08-26', 'YYYY-mm-dd', 'NLS_DATE_LANGUAGE = American') </p>
<p>4. 两个日期间的天数 <br />
select floor(sysdate - to_date('20020405','yyyymmdd')) from dual; </p>
<p>5. 时间为null的用法 <br />
select id, active_date from table1 <br />
UNION <br />
select 1, TO_DATE(null) from dual; <br />
<br />
注意要用TO_DATE(null) </p>
<p>6.月份差 <br />
a_date between to_date('20011201','yyyymmdd') and to_date('20011231','yyyymmdd') <br />
那么12月31号中午12点之后和12月1号的12点之前是不包含在这个范围之内的。 <br />
所以，当时间需要精确的时候，觉得to_char还是必要的 <br />
<br />
7. 日期格式冲突问题 <br />
输入的格式要看你安装的ORACLE字符集的类型, 比如: US7ASCII, date格式的类型就是: '01-Jan-01' <br />
alter system set NLS_DATE_LANGUAGE = American <br />
alter session set NLS_DATE_LANGUAGE = American <br />
或者在to_date中写 <br />
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual; <br />
注意我这只是举了NLS_DATE_LANGUAGE，当然还有很多， <br />
可查看 <br />
select * from nls_session_parameters <br />
select * from V$NLS_PARAMETERS <br />
8. <br />
select count(*) <br />
from ( select rownum-1 rnum <br />
from all_objects <br />
where rownum &lt;= to_date('2002-02-28','yyyy-mm-dd') - to_date('2002- <br />
02-01','yyyy-mm-dd')+1 <br />
) <br />
where to_char( to_date('2002-02-01','yyyy-mm-dd')+rnum-1, 'D' ) <br />
not in ( '1', '7' ) <br />
<br />
查找2002-02-28至2002-02-01间除星期一和七的天数 <br />
在前后分别调用DBMS_UTILITY.GET_TIME, 让后将结果相减(得到的是1/100秒, 而不是毫秒). </p>
<p>9. 查找月份 <br />
select months_between(to_date('01-31-1999','MM-DD-YYYY'),to_date('12-31-1998','MM-DD-YYYY')) "MONTHS" FROM DUAL; <br />
1 <br />
select months_between(to_date('02-01-1999','MM-DD-YYYY'),to_date('12-31-1998','MM-DD-YYYY')) "MONTHS" FROM DUAL; <br />
1.03225806451613 <br />
<br />
10. Next_day的用法 <br />
Next_day(date, day) <br />
<br />
Monday-Sunday, for format code DAY <br />
Mon-Sun, for format code DY <br />
1-7, for format code D </p>
<p>11 <br />
select to_char(sysdate,'hh:mi:ss') TIME from all_objects <br />
注意：第一条记录的TIME 与最后一行是一样的 <br />
可以建立一个函数来处理这个问题 <br />
create or replace function sys_date return date is <br />
begin <br />
return sysdate; <br />
end; <br />
<br />
select to_char(sys_date,'hh:mi:ss') from all_objects; <br />
<br />
12.获得小时数 <br />
extract()找出日期或间隔值的字段值<br />
SELECT EXTRACT(HOUR FROM TIMESTAMP '2001-02-16 2:38:40') from offer <br />
SQL&gt; select sysdate ,to_char(sysdate,'hh') from dual; <br />
<br />
SYSDATE TO_CHAR(SYSDATE,'HH') <br />
-------------------- --------------------- <br />
2003-10-13 19:35:21 07 <br />
<br />
SQL&gt; select sysdate ,to_char(sysdate,'hh24') from dual; <br />
<br />
SYSDATE TO_CHAR(SYSDATE,'HH24') <br />
-------------------- ----------------------- <br />
2003-10-13 19:35:21 19 </p>
<p><br />
13.年月日的处理 <br />
select older_date, <br />
newer_date, <br />
years, <br />
months, <br />
abs( <br />
trunc( <br />
newer_date- <br />
add_months( older_date,years*12+months ) <br />
) <br />
) days <br />
<br />
from ( select <br />
trunc(months_between( newer_date, older_date )/12) YEARS, <br />
mod(trunc(months_between( newer_date, older_date )),12 ) MONTHS, <br />
newer_date, <br />
older_date <br />
from ( <br />
select hiredate older_date, add_months(hiredate,rownum)+rownum newer_date <br />
from emp <br />
) <br />
) </p>
<p>14.处理月份天数不定的办法 <br />
select to_char(add_months(last_day(sysdate) +1, -2), 'yyyymmdd'),last_day(sysdate) from dual </p>
<p>16.找出今年的天数 <br />
select add_months(trunc(sysdate,'year'), 12) - trunc(sysdate,'year') from dual </p>
<p>闰年的处理方法 <br />
to_char( last_day( to_date('02' | | :year,'mmyyyy') ), 'dd' ) <br />
如果是28就不是闰年 </p>
<p>17.yyyy与rrrr的区别 <br />
'YYYY99 TO_C <br />
------- ---- <br />
yyyy 99 0099 <br />
rrrr 99 1999 <br />
yyyy 01 0001 <br />
rrrr 01 2001 </p>
<p>18.不同时区的处理 <br />
select to_char( NEW_TIME( sysdate, 'GMT','EST'), 'dd/mm/yyyy hh:mi:ss') ,sysdate <br />
from dual; </p>
<p>19.5秒钟一个间隔 <br />
Select TO_DATE(FLOOR(TO_CHAR(sysdate,'SSSSS')/300) * 300,'SSSSS') ,TO_CHAR(sysdate,'SSSSS') <br />
from dual </p>
<p>2002-11-1 9:55:00 35786 <br />
SSSSS表示5位秒数 </p>
<p>20.一年的第几天 <br />
select TO_CHAR(SYSDATE,'DDD'),sysdate from dual<br />
<br />
310 2002-11-6 10:03:51 </p>
<p>21.计算小时,分,秒,毫秒 <br />
select <br />
Days, <br />
A, <br />
TRUNC(A*24) Hours, <br />
TRUNC(A*24*60 - 60*TRUNC(A*24)) Minutes, <br />
TRUNC(A*24*60*60 - 60*TRUNC(A*24*60)) Seconds, <br />
TRUNC(A*24*60*60*100 - 100*TRUNC(A*24*60*60)) mSeconds <br />
from <br />
( <br />
select <br />
trunc(sysdate) Days, <br />
sysdate - trunc(sysdate) A <br />
from dual <br />
) <br />
</p>
<p>select * from tabname <br />
order by decode(mode,'FIFO',1,-1)*to_char(rq,'yyyymmddhh24miss'); <br />
<br />
// <br />
floor((date2-date1) /365) 作为年 <br />
floor((date2-date1, 365) /30) 作为月 <br />
d(mod(date2-date1, 365), 30)作为日.</p>
<p>23.next_day函数 返回下个星期的日期,day为1-7或星期日-星期六,1表示星期日<br />
next_day(sysdate,6)是从当前开始下一个星期五。后面的数字是从星期日开始算起。 <br />
1 2 3 4 5 6 7 <br />
日 一 二 三 四 五 六 <br />
<br />
--------------------------------------------------------------- <br />
<br />
select (sysdate-to_date('2003-12-03 12:55:45','yyyy-mm-dd hh24:mi:ss'))*24*60*60 from ddual<br />
日期 返回的是天 然后 转换为ss<br />
<br />
24,round[舍入到最接近的日期](day:舍入到最接近的星期日)<br />
select sysdate S1,<br />
round(sysdate) S2 ,<br />
round(sysdate,'year') YEAR,<br />
round(sysdate,'month') MONTH ,<br />
round(sysdate,'day') DAY from dual</p>
<p>25,trunc[截断到最接近的日期,单位为天] ,返回的是日期类型<br />
select sysdate S1, <br />
trunc(sysdate) S2, //返回当前日期,无时分秒<br />
trunc(sysdate,'year') YEAR, //返回当前年的1月1日,无时分秒<br />
trunc(sysdate,'month') MONTH , //返回当前月的1日,无时分秒<br />
trunc(sysdate,'day') DAY //返回当前星期的星期天,无时分秒<br />
from dual</p>
<p>26,返回日期列表中最晚日期<br />
select greatest('01-1月-04','04-1月-04','10-2月-04') from dual</p>
<p>27.计算时间差<br />
注:oracle时间差是以天数为单位,所以换算成年月,日<br />
<br />
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))/365) as spanYears from dual //时间差-年<br />
select ceil(moths_between(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))) as spanMonths from dual //时间差-月<br />
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))) as spanDays from dual //时间差-天<br />
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24) as spanHours from dual //时间差-时<br />
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24*60) as spanMinutes from dual //时间差-分<br />
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24*60*60) as spanSeconds from dual //时间差-秒</p>
<p>28.更新时间<br />
注:oracle时间加减是以天数为单位,设改变量为n,所以换算成年月,日<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate+n*365,'yyyy-mm-dd hh24:mi:ss') as newTime from dual //改变时间-年<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),add_months(sysdate,n) as newTime from dual //改变时间-月<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate+n,'yyyy-mm-dd hh24:mi:ss') as newTime from dual //改变时间-日<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate+n/24,'yyyy-mm-dd hh24:mi:ss') as newTime from dual //改变时间-时<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate+n/24/60,'yyyy-mm-dd hh24:mi:ss') as newTime from dual //改变时间-分<br />
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate+n/24/60/60,'yyyy-mm-dd hh24:mi:ss') as newTime from dual //改变时间-秒</p>
<p>29.查找月的第一天,最后一天<br />
SELECT Trunc(Trunc(SYSDATE, 'MONTH') - 1, 'MONTH') First_Day_Last_Month,<br />
Trunc(SYSDATE, 'MONTH') - 1 / 86400 Last_Day_Last_Month,<br />
Trunc(SYSDATE, 'MONTH') First_Day_Cur_Month,<br />
LAST_DAY(Trunc(SYSDATE, 'MONTH')) + 1 - 1 / 86400 Last_Day_Cur_Month<br />
FROM dual;<br />
</p>
<p class="t2"><span style="font-size: 24pt; color: #0000ff"><strong>转换函数</strong></span></p>
<p><span class="tt">4.1、asciistr(str)</span><br />
说明：将任意字符集的字符串转换为当前数据库实例对应的ascii字符串。</p>
<p>SELECT asciistr('中华民族') FROM dual;</p>
<p>备注：和该函数相似的有ascii,它是取得字符串第一个字符的ascii码，后面的字符不管；chr是将ascii码转换为对应的字符。</p>
<p><span class="tt">4.2、cast()</span><br />
说明：将一个内置数据类型或集合类型转变为另一个内置数据类型或集合类型。</p>
<p>SELECT CAST(SYSDATE AS VARCHAR2(100)) FROM dual;</p>
<p><span class="tt">4.3、chartorowid(str)</span><br />
说明：将字符串转变为rowid数据类型，但字符串必须符合rowid格式。</p>
<p><span class="tt">4.4、convert(str,char_set,source_char_set)</span><br />
说明：将字符串从一个字符集转变为另一个字符集。Str为要转变的字符串，char_set为转变后的字符集，source_char_set为该字符串原始的字符集。</p>
<p>SELECT convert('中国','US7ASCII','ZHS16GBK') FROM dual;</p>
<p><span class="tt">4.4、rowidtochar(rowid)</span><br />
说明：将rowid转换为对应的varchar2数据类型值。</p>
<p><span class="tt">4.5、to_char()</span><br />
select to_char(n&#8217;中国&#8217;) from dual; 转变为本地字符集类型</p>
<p>select to_char(10000,&#8217;L99G999D99MI&#8217;) from dual; 转换成货币格式</p>
<p><span class="tt">4.6、to_date()</span><br />
转变为日期格式。</p>
<p><span class="tt">4.7、to_number()</span><br />
将字符串转变为数字值，但字符串必须是数字(0~9)。</p>
<p class="t2"><span style="color: #0000ff"><strong style="font-size: 24pt">单行函数</strong></span></p>
<p><span class="tt">decode(exer.search1,result1[search2,result2,...][,defalut])</span><br />
用于匹配特定表达式的结果，如果search1匹配于exer，则返回result1，如果search2匹配于exer则返回result2，<br />
依次类推，如果没有任何匹配关系则返回defalut<br />
</p>
<p class="t2"><span style="color: #0000ff"><strong style="font-size: 24pt">分组函数</strong></span></p>
<p><br />
<span class="tt">6.1AVG 取平均值</span><br />
Select AVG(SAL) From EMP<br />
</p>
<p><span class="tt">6.2max 取最大值</span><br />
select max(sal) from emp</p>
<p><span class="tt">6.3min 取最小值</span><br />
select min(sal) from emp</p>
<p><span class="tt">6.4count 取记录数</span><br />
SELECT COUNT(*) FROM EMP<br />
也可以<br />
select count(empno) from emp<br />
注意:<br />
要么count(*)<br />
要么count(没有null值的列---主键)</p>
<p>&nbsp;</p>
<p><span class="tt">6.5sum 求和</span><br />
Select SUM(SAL*12) From EMP</p>
<p><span class="tt">应用：</span><br />
</p>
<p>1.分组函数和distinct关键词的搭配<br />
Select COUNT(Distinct SAL) From EMP</p>
<p>&nbsp;</p>
<p>2.组函数与空值<br />
select count(comm) from emp<br />
空值不参与运算,直接被过滤掉</p>
<p>&nbsp;</p>
<p>3.分组数据<br />
group by子句<br />
SELECT COUNT(*) FROM EMP GROUP BY DEPTNO<br />
</p>
<p>4.使用group by规则<br />
A.group by后面的字段不必显示在select列表中<br />
B.反之则不行<br />
也就是说:select后面的字段必须在group by子句中出现<br />
例外的是:<br />
在组函数(count,max,min等)中出现的字段除外<br />
</p>
<p>5.关于group by条件分组的问题<br />
A.group by可以和where来搭配<br />
where只能在group by的前面<br />
Select JOB From EMP Where SAL&gt;2000 Group By JOB<br />
group by后面不能有where</p>
<p>B.where子句中不能包括组函数<br />
条件的表达只能使用having来表示<br />
Select DEPTNO,Max(SAL),Min(SAL) From EMP Group By DEPTNO Having Max(SAL)&gt;2000</p>
<p class="t2" style="color: #0000ff"><strong style="font-size: 24pt">对象函数</strong></p>
<img src ="http://www.blogjava.net/ywj-316/aggbug/327354.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2010-07-28 18:22 <a href="http://www.blogjava.net/ywj-316/archive/2010/07/28/327354.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle变量</title><link>http://www.blogjava.net/ywj-316/archive/2010/07/28/327301.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Wed, 28 Jul 2010 04:01:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2010/07/28/327301.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/327301.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2010/07/28/327301.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/327301.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/327301.html</trackback:ping><description><![CDATA[<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #008080">--</span><span style="color: #008080">1定义标量变量</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">（1）定义语法</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">变量名&nbsp;</span><span style="color: #ff0000">[</span><span style="color: #ff0000">constant</span><span style="color: #ff0000">]</span><span style="color: #000000">&nbsp;数据类型&nbsp;</span><span style="color: #ff0000">[</span><span style="color: #ff0000">not&nbsp;null</span><span style="color: #ff0000">]</span><span style="color: #000000">&nbsp;</span><span style="color: #ff0000">[</span><span style="color: #ff0000">:=&nbsp;|&nbsp;default&nbsp;expr</span><span style="color: #ff0000">]</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;constant:用于指定常量。必须指定初始值</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;:=&nbsp;用于为变量和常量指定初始值</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;expr初始值的pl/sql表达式，可以是文本值、变量、函数等</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">示例1：</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">v_name&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_rate&nbsp;constant&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">3</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">)&nbsp;:</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">5.5</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_valid&nbsp;boolean&nbsp;</span><span style="color: #808080">not</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">default</span><span style="color: #000000">&nbsp;false;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">（2）使用</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">变量赋值使用等号前加冒号（:=）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">示例2：</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_name&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_money&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">6</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />c_tax_rate&nbsp;constant&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">3</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">)&nbsp;:</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">-</span><span style="font-weight: bold; color: #800000">0.03</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_tax_money&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">6</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">,game_money&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;v_name,v_money&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;v_tax_money&nbsp;:</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;v_money</span><span style="color: #808080">*</span><span style="color: #000000">c_tax_rate;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">name:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">v_name);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">money:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">v_money);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">rate:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">v_tax_money);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">（3）使用%TYPE属性</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">v_name&nbsp;user_info.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">%</span><span style="color: #000000">TYPE;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_money&nbsp;user_info.game_money</span><span style="color: #808080">%</span><span style="color: #000000">TYPE;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />c_tax_rate&nbsp;constant&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">3</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">)&nbsp;:</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">-</span><span style="font-weight: bold; color: #800000">0.03</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_tax_money&nbsp;v_money</span><span style="color: #808080">%</span><span style="color: #000000">TYPE;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">变量v_name，v_money与user_info表的user_name，game_money列的类型和长度完全一致</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">变量v_tax_money与变是v_money的类型和长度完全一致</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">2复合变量</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">（1）pl/sql记录（类似于结构）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;在定义部分定义记录类型和记录变量，在执行部分引用该记录变量</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;引用记录成员时必须要加记录变量作为前缀（记录变量。记录成员）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">示例3：</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />TYPE&nbsp;record_type&nbsp;</span><span style="color: #0000ff">IS</span><span style="color: #000000">&nbsp;RECORD(<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;v_name&nbsp;user_info.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">%</span><span style="color: #000000">TYPE,<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;v_money&nbsp;user_info.game_money</span><span style="color: #808080">%</span><span style="color: #000000">TYPE<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />emp_record&nbsp;record_type;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">,game_money&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;emp_record&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">name:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">emp_record.v_name);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">money:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">emp_record.v_money);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">（2）pl/sql表（类似于数组）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;pl/sql表与数组区别：下标没有上下限，个数年没有限制，下票可以为负值</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;必须先在定义部分定义pl/sql表类型和pl/sql表变量，在执行部分引用该pl/sql表变量</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">示例4：</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />TYPE&nbsp;name_table_type&nbsp;</span><span style="color: #0000ff">IS</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">TABLE</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">OF</span><span style="color: #000000">&nbsp;user_info.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">%</span><span style="color: #000000">TYPE&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">INDEX</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">BY</span><span style="color: #000000">&nbsp;BINARY_INTEGER;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_name&nbsp;name_table_type;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;v_name(</span><span style="color: #808080">-</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">)&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">name:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">v_name(</span><span style="color: #808080">-</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">));<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">（3）嵌套表</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">（4）VARRAY（变长数组）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">3&nbsp;参照变量</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;用于存放数值指针的变量。</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">（1）游标变量（REF&nbsp;CURSOR）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;静态游标：需要在定义游标时指定相应的select语句</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;示例5：</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;type&nbsp;c1&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000">&nbsp;ref&nbsp;</span><span style="color: #0000ff">cursor</span><span style="color: #000000">;</span><span style="color: #008080">--</span><span style="color: #008080">c1为ref&nbsp;cursor类型</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;emp_cursor&nbsp;c1;</span><span style="color: #008080">--</span><span style="color: #008080">emp_cursor为游标变量</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;v_name&nbsp;user_info.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">%</span><span style="color: #000000">TYPE;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;v_money&nbsp;user_info.game_money</span><span style="color: #808080">%</span><span style="color: #000000">TYPE;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">open</span><span style="color: #000000">&nbsp;emp_cursor&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;</span><span style="color: #008080">--</span><span style="color: #008080">打开游标变量时指定了对应的select语句</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">,game_money&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;loop<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">fetch</span><span style="color: #000000">&nbsp;emp_cursor&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;v_name,v_money;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">exit</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;emp_cursor</span><span style="color: #808080">%</span><span style="color: #000000">notfound;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;dbms_output.put_line(v_name);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;loop;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;动态游标：在定义游标变量时不要需指定相应的select语句，而是打开游标时指定select语句</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">（2）对象类型变量（REF&nbsp;obj_type）</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;是指向对象实例的指针</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;示例6：</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">or</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">replace</span><span style="color: #000000">&nbsp;type&nbsp;home_type&nbsp;</span><span style="color: #0000ff">as</span><span style="color: #000000">&nbsp;object(</span><span style="color: #008080">--</span><span style="color: #008080">建立对象类型</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;street&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">50</span><span style="color: #000000">),city&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">20</span><span style="color: #000000">),<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;state&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">20</span><span style="color: #000000">),zipcode&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">6</span><span style="color: #000000">),<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;owner&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">table</span><span style="color: #000000">&nbsp;homes&nbsp;</span><span style="color: #0000ff">of</span><span style="color: #000000">&nbsp;home_type;</span><span style="color: #008080">--</span><span style="color: #008080">建表</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;homes&nbsp;</span><span style="color: #0000ff">values</span><span style="color: #000000">(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">上海路100号</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">上海</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">200000</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">commit</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">对象表homes存放家庭地址及户主姓名，如每个家庭有四口人，为了同一家庭成员共享家庭地址，</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">可使用REF引用home_type对象类型，从而降低占用空间。</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">table</span><span style="color: #000000">&nbsp;person(<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;id&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">6</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">primary</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">key</span><span style="color: #000000">,<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;name&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">),<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;addr&nbsp;ref&nbsp;home_type<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;person&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000">,ref(p)&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;homes&nbsp;p&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;p.owner</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;person&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junl2</span><span style="color: #ff0000">'</span><span style="color: #000000">,ref(p)&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;homes&nbsp;p&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;p.owner</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">person表插入数据时，addr列将存入指向homes表相应数据的地址指针</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">4&nbsp;LOB变量</span><span style="color: #008080"><br />
<img id="Codehighlighter1_2995_3188_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2995_3188_Open_Text.style.display='none'; Codehighlighter1_2995_3188_Closed_Image.style.display='inline'; Codehighlighter1_2995_3188_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_2995_3188_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_2995_3188_Closed_Text.style.display='none'; Codehighlighter1_2995_3188_Open_Image.style.display='inline'; Codehighlighter1_2995_3188_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span id="Codehighlighter1_2995_3188_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_2995_3188_Open_Text"><span style="color: #008080">/*</span><span style="color: #008080">用于存储大批量数据的变量<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />（1）内部LOB<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;CLOB&nbsp;&nbsp;&nbsp;&nbsp;支技事务操作&nbsp;&nbsp;&nbsp;存储数据库中&nbsp;&nbsp;&nbsp;用于存储大批量字符数据<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;BLOB&nbsp;&nbsp;&nbsp;&nbsp;支技事务操作&nbsp;&nbsp;&nbsp;存储数据库中&nbsp;&nbsp;&nbsp;用于存储大批量二进制数据<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;NCLOB&nbsp;&nbsp;&nbsp;支技事务操作&nbsp;&nbsp;&nbsp;存储数据库中&nbsp;&nbsp;&nbsp;用于存储大批量字符数据<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />（2）外部LOB<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;BFILE&nbsp;&nbsp;&nbsp;不支技事务&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;存在OS文件中&nbsp;&nbsp;&nbsp;存储指向OS文件的指针<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" /></span><span style="color: #008080">*/</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">5非PL/SQL变量</span></div>
<img src ="http://www.blogjava.net/ywj-316/aggbug/327301.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2010-07-28 12:01 <a href="http://www.blogjava.net/ywj-316/archive/2010/07/28/327301.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>sql 精典-oracle</title><link>http://www.blogjava.net/ywj-316/archive/2010/07/28/327285.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Wed, 28 Jul 2010 01:46:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2010/07/28/327285.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/327285.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2010/07/28/327285.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/327285.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/327285.html</trackback:ping><description><![CDATA[1 <br />
<p>table:citys<br />
city&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; ran</p>
<p>广州&nbsp;&nbsp;&nbsp;&nbsp; A<br />
广州&nbsp;&nbsp;&nbsp;&nbsp; B<br />
广州&nbsp;&nbsp;&nbsp;&nbsp; C<br />
广州&nbsp;&nbsp;&nbsp;&nbsp; D<br />
<br />
city&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ran</p>
<p>广州&nbsp;&nbsp;&nbsp;&nbsp; A,B,C,D</p>
<p>请问oracle&nbsp; 的sql语句要怎么写?<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;city,wmsys.wm_concat(ran)<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;citys<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">group</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;city</span></div>
<p><br />
2 备忘</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;emp&nbsp;(id,name,sex,tim)&nbsp;</span><span style="color: #008080">--</span><span style="color: #008080">dual</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">values</span><span style="color: #000000">(id_seq.nextval,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">junly</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="color: #0000ff">default</span><span style="color: #000000">,to_date(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">2010-5-11&nbsp;11:25:00</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">yyyy-mm-dd&nbsp;hh24:mi:ss</span><span style="color: #ff0000">'</span><span style="color: #000000">))</span></div>
<p><br />
3 直接装载</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">直接装载方式</span><span style="color: #008080"><br />
<img id="Codehighlighter1_16_26_Open_Image" onclick="this.style.display='none'; Codehighlighter1_16_26_Open_Text.style.display='none'; Codehighlighter1_16_26_Closed_Image.style.display='inline'; Codehighlighter1_16_26_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_16_26_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_16_26_Closed_Text.style.display='none'; Codehighlighter1_16_26_Open_Image.style.display='inline'; Codehighlighter1_16_26_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="color: #0000ff">insert</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_16_26_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_16_26_Open_Text"><span style="color: #008080">/*</span><span style="color: #008080">+append</span><span style="color: #008080">*/</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;emp&nbsp;(field1,field2,field3)<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;f1,f2,f3&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tep<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;f4</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">20</span><span style="color: #000000">;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div>
<p><br />
4 更新</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">更新</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;emp&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;(field1,field2,field3)</span><span style="color: #808080">=</span><span style="color: #000000">(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;f1,f2,f3&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tep&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;f4</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">20</span><span style="color: #000000">)<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;field4</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">100</span><span style="color: #000000">;</span></div>
<br />
5 取消重复<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">count</span><span style="color: #000000">(</span><span style="color: #0000ff">distinct</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">as</span><span style="color: #000000">&nbsp;num<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info</span></div>
<br />
6 group by + rollup 横向小计<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">&nbsp;group&nbsp;by&nbsp;+&nbsp;rollup&nbsp;横向小计</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;num1,</span><span style="color: #ff00ff">sum</span><span style="color: #000000">(num2),</span><span style="color: #ff00ff">sum</span><span style="color: #000000">(num3)&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tmp_tb<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">group</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;rollup&nbsp;(num1)</span></div>
<br />
7 group by + cube&nbsp; 纵向小计<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">&nbsp;group&nbsp;by&nbsp;+&nbsp;cube&nbsp;&nbsp;纵向小计</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;num1,</span><span style="color: #ff00ff">sum</span><span style="color: #000000">(num2),</span><span style="color: #ff00ff">sum</span><span style="color: #000000">(num3)&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tmp_tb<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">group</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;cube(num1)</span></div>
<br />
8 自连接<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">&nbsp;自连接</span><span style="color: #008080"><br />
<img id="Codehighlighter1_7_112_Open_Image" onclick="this.style.display='none'; Codehighlighter1_7_112_Open_Text.style.display='none'; Codehighlighter1_7_112_Closed_Image.style.display='inline'; Codehighlighter1_7_112_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_7_112_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_7_112_Closed_Text.style.display='none'; Codehighlighter1_7_112_Open_Image.style.display='inline'; Codehighlighter1_7_112_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_7_112_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_7_112_Open_Text"><span style="color: #008080">/*</span><span style="color: #008080">&nbsp;user_info<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />id&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp;&nbsp;&nbsp;pid<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />-------------------<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />7888&nbsp;&nbsp;king&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />7889&nbsp;&nbsp;blank&nbsp;&nbsp;&nbsp;7888<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />7900&nbsp;&nbsp;jones&nbsp;&nbsp;&nbsp;7888<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /></span><span style="color: #008080">*/</span></span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;manager.name&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;manager,user_info&nbsp;worker<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;manager.id</span><span style="color: #808080">=</span><span style="color: #000000">worker.pid<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;worker.name</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">jones</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #008080">--</span><span style="color: #008080">--------</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #000000">king</span></div>
<br />
9 ALL和ANY（不能单独使用，与单行比较符［=,&gt;,&lt;,&gt;=,&lt;=,&lt;&gt;］结合使用）<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">ALL和ANY（不能单独使用，与单行比较符［=,&gt;,&lt;,&gt;=,&lt;=,&lt;&gt;］结合使用）</span><span style="color: #008080"><br />
<img id="Codehighlighter1_45_89_Open_Image" onclick="this.style.display='none'; Codehighlighter1_45_89_Open_Text.style.display='none'; Codehighlighter1_45_89_Closed_Image.style.display='inline'; Codehighlighter1_45_89_Closed_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_45_89_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_45_89_Closed_Text.style.display='none'; Codehighlighter1_45_89_Open_Image.style.display='inline'; Codehighlighter1_45_89_Open_Text.style.display='inline';" alt="" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_45_89_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_45_89_Open_Text"><span style="color: #008080">/*</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />ALL&nbsp;必须要符合子查询结果的所有值<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />ANY&nbsp;只要符合子查询结果的任一个值即可<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /></span><span style="color: #008080">*/</span></span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">&gt;all</span><span style="color: #000000">(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;form&nbsp;user_game&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;id</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">);<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">&gt;any</span><span style="color: #000000">(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">&nbsp;form&nbsp;user_game&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;id</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">);</span></div>
<br />
10 合并查询<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">（1）union&nbsp;取两个结果集的并集，自动去掉重复行并以第一列的结果排序</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />--</span><span style="color: #008080">（2）union&nbsp;all&nbsp;取两个结果集的并集，不去重复行也不进行排序</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />--</span><span style="color: #008080">（3）intersect&nbsp;取两个结果集的交集</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />--</span><span style="color: #008080">（4）minus&nbsp;取两个结果集的差集</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;uname,sal&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;emp&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;sal</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">200</span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">union</span><span style="color: #000000">&nbsp;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;uname,sal&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;emp&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;job</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">aaa</span><span style="color: #ff0000">'</span></div>
<br />
11 case条件分支<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;name,</span><span style="color: #ff00ff">case</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">3000</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">3</span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">2000</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">2</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">1000</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">10000</span><span style="color: #000000">;<br />
</span></div>
<br />
12 with子名重用子查询<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">with子名重用子查询</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">with</span><span style="color: #000000">&nbsp;summary&nbsp;</span><span style="color: #0000ff">as</span><span style="color: #000000">&nbsp;(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;name,</span><span style="color: #ff00ff">sum</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #000000">money</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">as</span><span style="color: #000000">&nbsp;total&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;user_info<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">group</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;name<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />)<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;name,total&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;summary&nbsp;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;total</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">3000</span><span style="color: #000000">;</span></div>
<br />
13 connect by (感谢广州Nicholas兄)<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;sysdate&nbsp;</span><span style="color: #808080">-</span><span style="color: #000000">&nbsp;rownum&nbsp;rn&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;dual&nbsp;connect&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;rownum</span><span style="color: #808080">&lt;</span><span style="font-weight: bold; color: #800000">100</span></div>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #008080">--</span><span style="color: #008080">日</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;to_number(to_char(rn,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">yyyymmdd</span><span style="color: #ff0000">'</span><span style="color: #000000">))rn&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">(</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;sysdate&nbsp;</span><span style="color: #808080">-</span><span style="color: #000000">&nbsp;rownum&nbsp;rn&nbsp;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;dual&nbsp;connect&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;rownum</span><span style="color: #808080">&lt;</span><span style="color: #000000">(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">floor</span><span style="color: #000000">(sysdate</span><span style="color: #808080">-</span><span style="color: #000000">regist_time)</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;sales_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">15587657</span><span style="color: #000000">))<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #008080">--</span><span style="color: #008080">月份</span><span style="color: #008080"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;to_number(to_char(rn,</span><span style="color: #ff0000">'</span><span style="color: #ff0000">yyyymm</span><span style="color: #ff0000">'</span><span style="color: #000000">))rn&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;add_months(sysdate,</span><span style="color: #808080">-</span><span style="color: #000000">rownum)&nbsp;rn&nbsp;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;dual&nbsp;connect&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;rownum</span><span style="color: #808080">&lt;</span><span style="color: #000000">(<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">floor</span><span style="color: #000000">(months_between(sysdate,regist_time))&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;sales_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #808080">=</span><span style="font-weight: bold; color: #800000">15587657</span><span style="color: #000000">))</span></div>
<br />
14 批理修改
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">merge&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;sales_info&nbsp;s&nbsp;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />using&nbsp;tb_rd_user_info&nbsp;u<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">on</span><span style="color: #000000">&nbsp;(s.</span><span style="color: #ff00ff">user_id</span><span style="color: #808080">=</span><span style="color: #000000">u.</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">)<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;matched&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">update</span><span style="color: #000000"><br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;s.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">=</span><span style="color: #000000">u.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">;<br />
<img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="color: #0000ff">commit</span><span style="color: #000000">;</span></div>
<br />
15 删除重复记录<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">delete</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;rowid&nbsp;</span><span style="color: #808080">in</span><span style="color: #000000">&nbsp;(<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">max</span><span style="color: #000000">(rowid)&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">group</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;userName&nbsp;</span><span style="color: #0000ff">having</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">count</span><span style="color: #000000">(userName)</span><span style="color: #808080">&gt;</span><span style="font-weight: bold; color: #800000">1</span><span style="color: #000000">)</span></div>
<img src ="http://www.blogjava.net/ywj-316/aggbug/327285.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2010-07-28 09:46 <a href="http://www.blogjava.net/ywj-316/archive/2010/07/28/327285.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle存储过程,函数,包</title><link>http://www.blogjava.net/ywj-316/archive/2010/07/26/327159.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Mon, 26 Jul 2010 10:20:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2010/07/26/327159.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/327159.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2010/07/26/327159.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/327159.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/327159.html</trackback:ping><description><![CDATA[<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #008080">--</span><span style="color: #008080">例1</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">declare</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />v_name&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;v_name&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tb_rd_user_info&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj12</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">name:</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">v_name);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />exception<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">when</span><span style="color: #000000">&nbsp;no_data_found&nbsp;</span><span style="color: #0000ff">then</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;dbms_output.put_line(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">error&nbsp;name</span><span style="color: #ff0000">'</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">匿名块</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;&nbsp;没有名称的pl/sql块，如例1</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">命名块</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">子程序</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;&nbsp;(1)过程</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;建立过程时可以指定输入参数(in),输出参数(out)</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">or</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">replace</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">procedure</span><span style="color: #000000">&nbsp;update_money(uname&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">,num&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">is</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;tb_rd_user_info&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;game_money&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;num&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;uname;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;update_money;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;删除</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">drop</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">procedure</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;update_money;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;调用</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">exec</span><span style="color: #000000">&nbsp;update_money(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />call&nbsp;update_money(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;重新编译</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">alter</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">procedure</span><span style="color: #000000">&nbsp;update_money&nbsp;compile;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;授权student用户使用该过程</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">grant</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">execute</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">on</span><span style="color: #000000">&nbsp;update_money&nbsp;</span><span style="color: #0000ff">to</span><span style="color: #000000">&nbsp;student;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;(2)函数</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;创建</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">or</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">replace</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;get_user_id(uname&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;uid&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;uid&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tb_rd_user_info&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">=</span><span style="color: #000000">uname;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;uid;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;调用</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #ff00ff">var</span><span style="color: #000000">&nbsp;rs&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />call&nbsp;get_user_id(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;:rs;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;删除</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">drop</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;get_user_id;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;重新编译</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">alter</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;get_user_id&nbsp;compile；<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;(3)包</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;创建(包由包规范和包体两部分组成)</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;包规范</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;package&nbsp;emp_pkg&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">procedure</span><span style="color: #000000">&nbsp;update_money&nbsp;(uname&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">,num&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;get_user_id(uname&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;包体</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">create</span><span style="color: #000000">&nbsp;package&nbsp;body&nbsp;emp_pkg&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">procedure</span><span style="color: #000000">&nbsp;update_money(uname&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">,num&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;tb_rd_user_info&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;game_money&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;num&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;uname;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">&nbsp;update_money;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;get_user_id(uname&nbsp;</span><span style="font-weight: bold; color: #000000">varchar2</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;uid&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">begin</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;uid&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tb_rd_user_info&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">=</span><span style="color: #000000">uname;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;uid;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">end</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;调用</span><span style="color: #008080"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #000000">call&nbsp;emp_pkg.update_money(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">,</span><span style="font-weight: bold; color: #800000">100000</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #ff00ff">var</span><span style="color: #000000">&nbsp;rs&nbsp;</span><span style="font-weight: bold; color: #000000">number</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />call&nbsp;emp_pkg.get_user_id(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">into</span><span style="color: #000000">&nbsp;:rs;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">解发器</span></div>
<br />
<span style="color: red">存储过程参数传递</span> <br />
<br />
参数的作用是向存储过程传递数据，或从存储过程获得返回结果。正确的使用参数可以大大增加存储过程的灵活性和通用性。 <br />
参数的类型有三种，如下所示。 <br />
<pre class="sql" style="display: none" name="code">
<li><span><span class="op">IN</span><span>&nbsp;&nbsp;定义一个输入参数变量，用于传递参数给存储过程 &nbsp;&nbsp;</span></span></li>
<li><span class="keyword">OUT</span><span>&nbsp;定义一个输出参数变量，用于从存储过程获取数据 &nbsp;&nbsp;</span></span></li>
<li><span class="op">IN</span><span>&nbsp;</span><span class="keyword">OUT</span><span>&nbsp;&nbsp;定义一个输入、输出参数变量，兼有以上两者的功能&nbsp;</span></pre>
<br />
参数的定义形式和作用如下： <br />
参数名 IN 数据类型 DEFAULT 值； <br />
定义一个输入参数变量，用于传递参数给存储过程。在调用存储过程时，主程序的实际参数可以是常量、有值变量或表达式等。DEFAULT 关键字为可选项，用来设定参数的默认值。如果在调用存储过程时不指明参数，则参数变量取默认值。在存储过程中，输入变量接收主程序传递的值，但不能对其进行赋值。 <br />
参数名 OUT 数据类型； <br />
定义一个输出参数变量，用于从存储过程获取数据，即变量从存储过程中返回值给主程序。 <br />
在调用存储过程时，主程序的实际参数只能是一个变量，而不能是常量或表达式。在存储过程中，参数变量只能被赋值而不能将其用于赋值，在存储过程中必须给输出变量至少赋值一次。 <br />
参数名 IN OUT 数据类型 DEFAULT 值； <br />
定义一个输入、输出参数变量，兼有以上两者的功能。在调用存储过程时，主程序的实际参数只能是一个变量，而不能是常量或表达式。DEFAULT 关键字为可选项，用来设定参数的默认值。在存储过程中，变量接收主程序传递的值，同时可以参加赋值运算，也可以对其进行赋值。在存储过程中必须给变量至少赋值一次。 <br />
如果省略IN、OUT或IN OUT，则默认模式是IN。&nbsp;<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">CREATE</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">OR</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">REPLACE</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">PROCEDURE</span><span style="color: #000000">&nbsp;CHANGE_SALARY(P_EMPNO&nbsp;</span><span style="color: #808080">IN</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">NUMBER</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">DEFAULT</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">7788</span><span style="color: #000000">,P_RAISE&nbsp;</span><span style="font-weight: bold; color: #000000">NUMBER</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">DEFAULT</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">AS</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V_ENAME&nbsp;</span><span style="font-weight: bold; color: #000000">VARCHAR2</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">10</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />V_SAL&nbsp;</span><span style="font-weight: bold; color: #000000">NUMBER</span><span style="color: #000000">(</span><span style="font-weight: bold; color: #800000">5</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">BEGIN</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">SELECT</span><span style="color: #000000">&nbsp;ENAME,SAL&nbsp;</span><span style="color: #0000ff">INTO</span><span style="color: #000000">&nbsp;V_ENAME,V_SAL&nbsp;</span><span style="color: #0000ff">FROM</span><span style="color: #000000">&nbsp;EMP&nbsp;</span><span style="color: #0000ff">WHERE</span><span style="color: #000000">&nbsp;EMPNO</span><span style="color: #808080">=</span><span style="color: #000000">P_EMPNO;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">UPDATE</span><span style="color: #000000">&nbsp;EMP&nbsp;</span><span style="color: #0000ff">SET</span><span style="color: #000000">&nbsp;SAL</span><span style="color: #808080">=</span><span style="color: #000000">SAL</span><span style="color: #808080">+</span><span style="color: #000000">P_RAISE&nbsp;</span><span style="color: #0000ff">WHERE</span><span style="color: #000000">&nbsp;EMPNO</span><span style="color: #808080">=</span><span style="color: #000000">P_EMPNO;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DBMS_OUTPUT.PUT_LINE(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">雇员</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">V_ENAME</span><span style="color: #808080">||</span><span style="color: #ff0000">'</span><span style="color: #ff0000">的工资被改为</span><span style="color: #ff0000">'</span><span style="color: #808080">||</span><span style="color: #000000">TO_CHAR(V_SAL</span><span style="color: #808080">+</span><span style="color: #000000">P_RAISE));<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">COMMIT</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EXCEPTION<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">WHEN</span><span style="color: #000000">&nbsp;OTHERS&nbsp;</span><span style="color: #0000ff">THEN</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DBMS_OUTPUT.PUT_LINE(</span><span style="color: #ff0000">'</span><span style="color: #ff0000">发生错误，修改失败！</span><span style="color: #ff0000">'</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">ROLLBACK</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">END</span><span style="color: #000000">;</span></div>
</li>
参数的值由调用者传递，传递的参数的个数、类型和顺序应该和定义的一致。如果顺序不一致，可以采用以下调用方法。如上例，执行语句可以改为： <br />
&nbsp;EXECUTE CHANGE_SALARY(P_RAISE=&gt;80,P_EMPNO=&gt;7788); <br />
&nbsp; 可以看出传递参数的顺序发生了变化，并且明确指出了参数名和要传递的值，=&gt;运算符左侧是参数名，右侧是参数表达式，这种赋值方法的意义较清楚。 <br />
<img src ="http://www.blogjava.net/ywj-316/aggbug/327159.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2010-07-26 18:20 <a href="http://www.blogjava.net/ywj-316/archive/2010/07/26/327159.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>sql思路</title><link>http://www.blogjava.net/ywj-316/archive/2009/12/10/305400.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Thu, 10 Dec 2009 03:55:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2009/12/10/305400.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/305400.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2009/12/10/305400.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/305400.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/305400.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;b.promo_number,b.payment_time,b.validity_days,a.tim,b.goods_name,b.payment_time</span><span style="color: #808080">+</span><span style="color: #000000">b.validity_days&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #ff00ff">max</span><span style="color: #000000">(m.send_time)&nbsp;tim&nbsp;<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tb_payment_promo_log&nbsp;p,tb_mobile_log&nbsp;m&nbsp;&nbsp;<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;p.goods_id</span><span style="color: #808080">=</span><span style="color: #800000; font-weight: bold">615732</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;p.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">&nbsp;<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;p.promo_number</span><span style="color: #808080">=</span><span style="color: #000000">m.operate&nbsp;<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;p.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;m.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;)&nbsp;a&nbsp;,&nbsp;tb_payment_promo_log&nbsp;b,tb_mobile_log&nbsp;c&nbsp;<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;b.goods_id</span><span style="color: #808080">=</span><span style="color: #800000; font-weight: bold">615732</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;b.</span><span style="color: #ff00ff">user_name</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">ywj123</span><span style="color: #ff0000">'</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;b.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;c.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;a.tim&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;c.send_time<br />
<img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">order</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;b.payment_time&nbsp;</span><span style="color: #0000ff">desc</span></div>
<br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;t3.usid,t3.usname,t3.usarea,t3.cell&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />(</span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;&nbsp;t2.cellphone&nbsp;cell,</span><span style="color: #ff00ff">max</span><span style="color: #000000">(t1.game_money</span><span style="color: #808080">+</span><span style="color: #000000">t1.bank_game_money)&nbsp;</span><span style="color: #000000; font-weight: bold">money</span><span style="color: #000000">,t1.</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;usid,t1.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">&nbsp;usname,t1.user_area&nbsp;usarea&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;tb_rd_user_info&nbsp;t1,tb_rd_user_info2&nbsp;t2<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;t1.login_tim&nbsp;</span><span style="color: #808080">&lt;=</span><span style="color: #000000">&nbsp;sysdate</span><span style="color: #808080">-</span><span style="color: #800000; font-weight: bold">7</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;t1.login_tim&nbsp;</span><span style="color: #808080">&gt;</span><span style="color: #000000">&nbsp;sysdate</span><span style="color: #808080">-</span><span style="color: #800000; font-weight: bold">8</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;t1.</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;t2.</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">and</span><span style="color: #000000">&nbsp;t2.cellphone&nbsp;</span><span style="color: #0000ff">is</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">not</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000"><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">group</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">by</span><span style="color: #000000">&nbsp;t2.cellphone,t1.</span><span style="color: #ff00ff">user_id</span><span style="color: #000000">,t1.</span><span style="color: #ff00ff">user_name</span><span style="color: #000000">,t1.user_area)&nbsp;t3&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;t3.</span><span style="color: #000000; font-weight: bold">money</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">&lt;</span><span style="color: #000000">&nbsp;</span><span style="color: #800000; font-weight: bold">500000</span></div>
 <img src ="http://www.blogjava.net/ywj-316/aggbug/305400.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2009-12-10 11:55 <a href="http://www.blogjava.net/ywj-316/archive/2009/12/10/305400.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>配数据库的方式</title><link>http://www.blogjava.net/ywj-316/archive/2009/11/30/304214.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Mon, 30 Nov 2009 01:45:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2009/11/30/304214.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/304214.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2009/11/30/304214.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/304214.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/304214.html</trackback:ping><description><![CDATA[1 jndi<br />
配置数所源
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">context:property-placeholder&nbsp;</span><span style="color: #ff0000">location</span><span style="color: #0000ff">="jdbc.properties"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000">//引入资源文件<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="datasource"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.apache.commons.dbcp.BasicDataSource"</span><span style="color: #ff0000">&nbsp;destroy-method</span><span style="color: #0000ff">="close"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="driverClassName"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="org.git.mm.mysql.Driver[${driverClassName}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="url"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="jdbc:mysql://localhost:3306/database?useUnicode=true&nbsp;&amp;amp;&nbsp;characterEncoding=UTF-8[${url}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="username"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="root[${username}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="password"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="root[${password}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;连接池启动时的初始值勤&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="initialSize"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="1[${initialSize}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;连接池的最大值&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="maxActive"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="500[${maxActive}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;最大空闲值，当经过一个高峰时间后，连接池可以慢慢将已经用不到的连接释放一部分,一直减少到maxIdle为止&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="maxIdle"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="2[${maxIdle}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;最小空闲值，当连接池的连接数量少于阀值时,连接池就会申请一些连接,以免洪峰时来不及申请&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="minIdle"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="1[${minIdle}]"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span></div>
2 bean
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="datasource"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.apache.commons.dbcp.BasicDataSource"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="driverClassName"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="com.microsoft.sqlserver.jdbc.SQLServerDriver"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="url"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="jdbc:sqlserver://127.0.0.1:1433;databaseName=somken"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="username"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="sa"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="password"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="123456"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="sf"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.springframework.orm.hibernate3.LocalSessionFactoryBean"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="dataSource"</span><span style="color: #ff0000">&nbsp;ref</span><span style="color: #0000ff">="datasource"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="mappingResources"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">list</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">org/somken/entity/UserInfo.xml</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">list</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="hibernateProperties"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">props</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">prop&nbsp;</span><span style="color: #ff0000">key</span><span style="color: #0000ff">="hibernate.dialect"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">org.hibernate.dialect.SQLServerDialect</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">prop</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">prop&nbsp;</span><span style="color: #ff0000">key</span><span style="color: #0000ff">="hibernate.show_sql"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">true</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">prop</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">props</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
3 读取hibernate.cfg.xml
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="sf"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.springframework.orm.hibernate3.LocalSessionFactoryBean"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="configLocation"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="classpath:hibernate.cfg.xml"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span></div>
<img src ="http://www.blogjava.net/ywj-316/aggbug/304214.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2009-11-30 09:45 <a href="http://www.blogjava.net/ywj-316/archive/2009/11/30/304214.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>BaseDAO</title><link>http://www.blogjava.net/ywj-316/archive/2009/11/30/304202.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Mon, 30 Nov 2009 00:21:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2009/11/30/304202.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/304202.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2009/11/30/304202.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/304202.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/304202.html</trackback:ping><description><![CDATA[sql<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;org.epet.dao.impl;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.Connection;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.DriverManager;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.PreparedStatement;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.ResultSet;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.sql.SQLException;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;javax.naming.Context;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;javax.naming.InitialContext;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;javax.naming.NamingException;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;javax.sql.DataSource;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;com.sun.java_cup.internal.internal_error;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img id="Codehighlighter1_392_1969_Open_Image" onclick="this.style.display='none'; Codehighlighter1_392_1969_Open_Text.style.display='none'; Codehighlighter1_392_1969_Closed_Image.style.display='inline'; Codehighlighter1_392_1969_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_392_1969_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_392_1969_Closed_Text.style.display='none'; Codehighlighter1_392_1969_Open_Image.style.display='inline'; Codehighlighter1_392_1969_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">abstract</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;BaseDAO&nbsp;</span><span id="Codehighlighter1_392_1969_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_392_1969_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;String&nbsp;DRIVER_CLASS&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">com.microsoft.sqlserver.jdbc.SQLServerDriver</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;String&nbsp;DATABASE_URL&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">jdbc:sqlserver://localhost:1433;DatabaseName=epet</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;String&nbsp;DATABASE_USER&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">sa</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;String&nbsp;DATABASE_PASSWORD&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">accp</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img id="Codehighlighter1_694_722_Open_Image" onclick="this.style.display='none'; Codehighlighter1_694_722_Open_Text.style.display='none'; Codehighlighter1_694_722_Closed_Image.style.display='inline'; Codehighlighter1_694_722_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_694_722_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_694_722_Closed_Text.style.display='none'; Codehighlighter1_694_722_Open_Image.style.display='inline'; Codehighlighter1_694_722_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_694_722_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**&nbsp;*/</span><span id="Codehighlighter1_694_722_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;返回连接<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@return</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
<img id="Codehighlighter1_766_1258_Open_Image" onclick="this.style.display='none'; Codehighlighter1_766_1258_Open_Text.style.display='none'; Codehighlighter1_766_1258_Closed_Image.style.display='inline'; Codehighlighter1_766_1258_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_766_1258_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_766_1258_Closed_Text.style.display='none'; Codehighlighter1_766_1258_Open_Image.style.display='inline'; Codehighlighter1_766_1258_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;Connection&nbsp;getConnection()&nbsp;</span><span id="Codehighlighter1_766_1258_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_766_1258_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;connection</span><span style="color: #000000">=</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br />
<img id="Codehighlighter1_804_1080_Open_Image" onclick="this.style.display='none'; Codehighlighter1_804_1080_Open_Text.style.display='none'; Codehighlighter1_804_1080_Closed_Image.style.display='inline'; Codehighlighter1_804_1080_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_804_1080_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_804_1080_Closed_Text.style.display='none'; Codehighlighter1_804_1080_Open_Image.style.display='inline'; Codehighlighter1_804_1080_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_804_1080_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_804_1080_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Class.forName(DRIVER_CLASS);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;connection&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;DriverManager.getConnection(DATABASE_URL,<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DATABASE_USER,&nbsp;DATABASE_PASSWORD);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Context&nbsp;tx=new&nbsp;InitialContext();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataSource&nbsp;ds=(DataSource)tx.lookup("java:comp/env/food");<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;connection=ds.getConnection();</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #000000"><br />
<img id="Codehighlighter1_1105_1133_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1105_1133_Open_Text.style.display='none'; Codehighlighter1_1105_1133_Closed_Image.style.display='inline'; Codehighlighter1_1105_1133_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1105_1133_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1105_1133_Closed_Text.style.display='none'; Codehighlighter1_1105_1133_Open_Image.style.display='inline'; Codehighlighter1_1105_1133_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;e)&nbsp;</span><span id="Codehighlighter1_1105_1133_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1105_1133_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />
<img id="Codehighlighter1_1168_1234_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1168_1234_Open_Text.style.display='none'; Codehighlighter1_1168_1234_Closed_Image.style.display='inline'; Codehighlighter1_1168_1234_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1168_1234_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1168_1234_Closed_Text.style.display='none'; Codehighlighter1_1168_1234_Open_Image.style.display='inline'; Codehighlighter1_1168_1234_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(ClassNotFoundException&nbsp;e)&nbsp;</span><span id="Codehighlighter1_1168_1234_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1168_1234_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;TODO&nbsp;Auto-generated&nbsp;catch&nbsp;block</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;connection;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img id="Codehighlighter1_1261_1302_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1261_1302_Open_Text.style.display='none'; Codehighlighter1_1261_1302_Closed_Image.style.display='inline'; Codehighlighter1_1261_1302_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1261_1302_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1261_1302_Closed_Text.style.display='none'; Codehighlighter1_1261_1302_Open_Image.style.display='inline'; Codehighlighter1_1261_1302_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_1261_1302_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**&nbsp;*/</span><span id="Codehighlighter1_1261_1302_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;查询<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;sql<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@return</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
<img id="Codehighlighter1_1348_1625_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1348_1625_Open_Text.style.display='none'; Codehighlighter1_1348_1625_Closed_Image.style.display='inline'; Codehighlighter1_1348_1625_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1348_1625_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1348_1625_Closed_Text.style.display='none'; Codehighlighter1_1348_1625_Open_Image.style.display='inline'; Codehighlighter1_1348_1625_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;ResultSet&nbsp;getDate(String&nbsp;sql)</span><span id="Codehighlighter1_1348_1625_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1348_1625_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;connection</span><span style="color: #000000">=</span><span style="color: #000000">getConnection();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ResultSet&nbsp;resultSet</span><span style="color: #000000">=</span><span style="color: #0000ff">null</span><span style="color: #000000">;<br />
<img id="Codehighlighter1_1425_1549_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1425_1549_Open_Text.style.display='none'; Codehighlighter1_1425_1549_Closed_Image.style.display='inline'; Codehighlighter1_1425_1549_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1425_1549_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1425_1549_Closed_Text.style.display='none'; Codehighlighter1_1425_1549_Open_Image.style.display='inline'; Codehighlighter1_1425_1549_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_1425_1549_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1425_1549_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PreparedStatement&nbsp;preparedStatement</span><span style="color: #000000">=</span><span style="color: #000000">connection.prepareStatement(sql);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resultSet</span><span style="color: #000000">=</span><span style="color: #000000">preparedStatement.executeQuery();<br />
<img id="Codehighlighter1_1574_1602_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1574_1602_Open_Text.style.display='none'; Codehighlighter1_1574_1602_Closed_Image.style.display='inline'; Codehighlighter1_1574_1602_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1574_1602_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1574_1602_Closed_Text.style.display='none'; Codehighlighter1_1574_1602_Open_Image.style.display='inline'; Codehighlighter1_1574_1602_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;e)&nbsp;</span><span id="Codehighlighter1_1574_1602_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1574_1602_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;resultSet;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img id="Codehighlighter1_1671_1967_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1671_1967_Open_Text.style.display='none'; Codehighlighter1_1671_1967_Closed_Image.style.display='inline'; Codehighlighter1_1671_1967_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1671_1967_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1671_1967_Closed_Text.style.display='none'; Codehighlighter1_1671_1967_Open_Image.style.display='inline'; Codehighlighter1_1671_1967_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;dele(String&nbsp;sql,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;id)</span><span id="Codehighlighter1_1671_1967_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1671_1967_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;result</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Connection&nbsp;connection</span><span style="color: #000000">=</span><span style="color: #000000">getConnection();<br />
<img id="Codehighlighter1_1736_1894_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1736_1894_Open_Text.style.display='none'; Codehighlighter1_1736_1894_Closed_Image.style.display='inline'; Codehighlighter1_1736_1894_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1736_1894_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1736_1894_Closed_Text.style.display='none'; Codehighlighter1_1736_1894_Open_Image.style.display='inline'; Codehighlighter1_1736_1894_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_1736_1894_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1736_1894_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PreparedStatement&nbsp;preparedStatement</span><span style="color: #000000">=</span><span style="color: #000000">connection.prepareStatement(sql);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;preparedStatement.setInt(</span><span style="color: #000000">1</span><span style="color: #000000">,&nbsp;id);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result</span><span style="color: #000000">=</span><span style="color: #000000">preparedStatement.executeUpdate();<br />
<img id="Codehighlighter1_1919_1947_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1919_1947_Open_Text.style.display='none'; Codehighlighter1_1919_1947_Closed_Image.style.display='inline'; Codehighlighter1_1919_1947_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_1919_1947_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_1919_1947_Closed_Text.style.display='none'; Codehighlighter1_1919_1947_Open_Image.style.display='inline'; Codehighlighter1_1919_1947_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(SQLException&nbsp;e)&nbsp;</span><span id="Codehighlighter1_1919_1947_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1919_1947_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;result;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
mysql:<br />
<span id="Codehighlighter1_0_348_Open_Text">
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_0_135_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_135_Open_Text.style.display='none'; Codehighlighter1_0_135_Closed_Image.style.display='inline'; Codehighlighter1_0_135_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_0_135_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_0_135_Closed_Text.style.display='none'; Codehighlighter1_0_135_Open_Image.style.display='inline'; Codehighlighter1_0_135_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span id="Codehighlighter1_0_135_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**/</span><span id="Codehighlighter1_0_135_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">show&nbsp;databases;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />create&nbsp;database&nbsp;aa;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />use&nbsp;aa;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />show&nbsp;tables;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />select&nbsp;*&nbsp;from&nbsp;userinfo&nbsp;limit&nbsp;1,2;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />-----------------------------------------</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
<img id="Codehighlighter1_191_347_Open_Image" onclick="this.style.display='none'; Codehighlighter1_191_347_Open_Text.style.display='none'; Codehighlighter1_191_347_Closed_Image.style.display='inline'; Codehighlighter1_191_347_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_191_347_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_191_347_Closed_Text.style.display='none'; Codehighlighter1_191_347_Open_Image.style.display='inline'; Codehighlighter1_191_347_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;connection&nbsp;getConnection&nbsp;()&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;SQLException</span><span id="Codehighlighter1_191_347_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_191_347_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;Class.forName(</span><span style="color: #000000">"</span><span style="color: #000000">com.mysql.jdbc.Driver</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;String&nbsp;url</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">jdbc:mysql://127.0.1:3306/somken(数据库名)</span><span style="color: #000000">"</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;DriverManager.getConnection(url,</span><span style="color: #000000">"</span><span style="color: #000000">root</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">root</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span></div>
</span>
<img src ="http://www.blogjava.net/ywj-316/aggbug/304202.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2009-11-30 08:21 <a href="http://www.blogjava.net/ywj-316/archive/2009/11/30/304202.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>sql配置文档</title><link>http://www.blogjava.net/ywj-316/archive/2009/11/29/304133.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Sun, 29 Nov 2009 13:22:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2009/11/29/304133.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/304133.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2009/11/29/304133.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/304133.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/304133.html</trackback:ping><description><![CDATA[&nbsp;
<p>1<span style="font-family: 宋体">、设置</span>SQL Server<span style="font-family: 宋体">服务器：</span></p>
<p>1-1<span style="font-family: 宋体">、&#8220;</span>SQL Server 2005 <span style="font-family: 宋体">服务&#8221;中停止服务&#8220;</span>SQL Server <span style="font-family: 宋体">（</span>SQLEXPRESS<span style="font-family: 宋体">）&#8221;（默认是启动状态）</span></p>
<p>1-2<span style="font-family: 宋体">、&#8220;</span>SQL Server 2005 <span style="font-family: 宋体">网络配置&#8221;</span> <span style="font-family: 宋体">&#8594;</span> <span style="font-family: 宋体">&#8220;</span>MSSQLSERVER <span style="font-family: 宋体">的协议&#8221;，启动&#8220;</span>TCP/IP<span style="font-family: 宋体">&#8221;（默认是禁用状态），然后双击&#8220;</span>TCP/IP<span style="font-family: 宋体">&#8221;进入属性设置，在&#8220;</span>IP <span style="font-family: 宋体">地址&#8221;里，确认&#8220;</span>IPAll<span style="font-family: 宋体">&#8221;</span></p>
<p><span style="font-family: 宋体">中的&#8220;</span>TCP <span style="font-family: 宋体">端口&#8221;为</span>1433</p>
<p>1-3<span style="font-family: 宋体">、&#8220;</span>SQL Server 2005 <span style="font-family: 宋体">服务&#8221;中启动服务&#8220;</span>SQL Server <span style="font-family: 宋体">（</span>MSSQLSERVER <span style="font-family: 宋体">）&#8221;（默认是停止状态）</span></p>
<p>1-4<span style="font-family: 宋体">、关闭&#8220;</span>SQL Server Configuration Manager<span style="font-family: 宋体">&#8221;（此时可以启动&#8220;</span>SQL Server Management Studio<span style="font-family: 宋体">&#8221;，并用帐户</span>sa<span style="font-family: 宋体">、密码</span>123<span style="font-family: 宋体">登录，</span>SQL Server<span style="font-family: 宋体">服务器设置正确的话应该能登录成功）</span></p>
<p>2<span style="font-family: 宋体">、导入</span>jar<span style="font-family: 宋体">包：</span></p>
<p><span style="font-family: 宋体">打开</span>Test<span style="font-family: 宋体">的&#8220;</span>Properties<span style="font-family: 宋体">&#8221;</span> <span style="font-family: 宋体">&#8594;</span> <span style="font-family: 宋体">&#8220;</span>Java Build Path<span style="font-family: 宋体">&#8221;</span> <span style="font-family: 宋体">&#8594;</span> <span style="font-family: 宋体">&#8220;</span>Libraries<span style="font-family: 宋体">&#8221;</span> <span style="font-family: 宋体">&#8594;</span> <span style="font-family: 宋体">&#8220;</span>Add External JARs<span style="font-family: 宋体">&#8221;</span> <span style="font-family: 宋体">，选择下载好的连接驱动包&#8220;</span>sqljdbc.jar<span style="font-family: 宋体">&#8221;，然后点击&#8220;</span>OK<span style="font-family: 宋体">&#8221;确定</span></p>
<p><span style="font-size: 10.5pt; font-family: 'Times New Roman'">3</span><span style="font-size: 10.5pt">如果你以前用</span><span style="font-size: 10.5pt; font-family: 'Times New Roman'">JDBC</span><span style="font-size: 10.5pt">连接</span><span style="font-size: 10.5pt; font-family: 'Times New Roman'">SQL Server 2000</span><span style="font-size: 10.5pt">的话就<span style="color: red">要注意了</span>：</span></p>
<p><span style="font-size: 10.5pt">在</span><span style="font-size: 10.5pt; font-family: 'Times New Roman'">SQL Server 2000 </span><span style="font-size: 10.5pt">中加载驱动和</span><span style="font-size: 10.5pt; font-family: 'Times New Roman'">URL</span><span style="font-size: 10.5pt">路径的语句是</span></p>
<p><span style="font-size: 10.5pt; font-family: 'Times New Roman'">&#8220;com.microsoft.</span><strong><span style="color: blue; font-family: 'Times New Roman'">jdbc</span></strong><span style="font-size: 10.5pt; font-family: 'Times New Roman'">.<strong><span style="color: red">sqlserver</span></strong>.SQLServerDriver&#8221;<br />
&#8220;</span><strong><span style="color: red; font-family: 'Times New Roman'">jdbc</span></strong><span style="font-size: 10.5pt; color: red; font-family: 'Times New Roman'">:</span><strong><span style="color: blue; font-family: 'Times New Roman'">microsoft</span></strong><span style="font-size: 10.5pt; color: blue; font-family: 'Times New Roman'">:</span><strong><span style="font-size: 10.5pt; color: red; font-family: 'Times New Roman'">sqlserver</span></strong><span style="font-size: 10.5pt; font-family: 'Times New Roman'">://localhost:1433; DatabaseName=JSPTest&#8221;</span></p>
<p><span style="font-size: 10.5pt">而</span><span style="font-size: 10.5pt; font-family: 'Times New Roman'">SQL Server 2005 </span><span style="font-size: 10.5pt">中加载驱动和</span><span style="font-size: 10.5pt; font-family: 'Times New Roman'">URL</span><span style="font-size: 10.5pt">的语句则为</span></p>
<p><span style="font-size: 10.5pt; font-family: 'Times New Roman'">&#8220;com.microsoft.<strong><span style="color: red">sqlserver</span>.</strong></span><strong><span style="color: blue; font-family: 'Times New Roman'">jdbc</span></strong><span style="font-size: 10.5pt; font-family: 'Times New Roman'">.SQLServerDriver&#8221;</span></p>
<p><span style="font-size: 10.5pt; font-family: 'Times New Roman'">&#8220;</span><strong><span style="color: red; font-family: 'Times New Roman'">jdbc:sqlserver</span></strong><span style="font-size: 10.5pt; font-family: 'Times New Roman'">://localhost:1433; DatabaseName=JSPTest&#8221;</span></p>
<span style="font-size: 10.5pt; font-family: 宋体">注意两者的差异</span>
<img src ="http://www.blogjava.net/ywj-316/aggbug/304133.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2009-11-29 21:22 <a href="http://www.blogjava.net/ywj-316/archive/2009/11/29/304133.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>mysql_url</title><link>http://www.blogjava.net/ywj-316/archive/2009/11/03/300944.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Tue, 03 Nov 2009 09:43:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2009/11/03/300944.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/300944.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2009/11/03/300944.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/300944.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/300944.html</trackback:ping><description><![CDATA[jdbc:mysql://127.0.0.1:3306/test_hibernate2?useUnicode=true&amp;amp;characterEncoding=UTF-8
  <img src ="http://www.blogjava.net/ywj-316/aggbug/300944.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2009-11-03 17:43 <a href="http://www.blogjava.net/ywj-316/archive/2009/11/03/300944.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PL/SQL Developer 导入导出csv文件</title><link>http://www.blogjava.net/ywj-316/archive/2009/11/02/300663.html</link><dc:creator>junly</dc:creator><author>junly</author><pubDate>Mon, 02 Nov 2009 04:01:00 GMT</pubDate><guid>http://www.blogjava.net/ywj-316/archive/2009/11/02/300663.html</guid><wfw:comment>http://www.blogjava.net/ywj-316/comments/300663.html</wfw:comment><comments>http://www.blogjava.net/ywj-316/archive/2009/11/02/300663.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ywj-316/comments/commentRss/300663.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ywj-316/services/trackbacks/300663.html</trackback:ping><description><![CDATA[<p>PL/SQL Developer 可以导入或者导出CSV文件。</p>
<p>&nbsp;导入CSV文件步骤：</p>
<p>&nbsp;1、选择tools-&gt;text importer....</p>
<p>&nbsp;2、选择第二个Data to oracle选项卡，然后选择Open Data file....，选择要导入的csv文件，确定</p>
<p>&nbsp;3、选择对应的owner和table，将字段一一对应，最后点击下方的导入，数据即导入到了选定的table中了。</p>
<p>&nbsp;&nbsp;&nbsp;<img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/lovingprince/EntryImages/20090311/csvimport1.JPG" width="258" height="113" /></p>
<p>导出csv文件相对比较简单：</p>
<p>1、先用sql语句查询得到结果</p>
<p>2、选择export query results .....选择保存为csv文件即可。</p>
<p>&nbsp;<img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/lovingprince/EntryImages/20090311/csvoutput.JPG" width="506" height="250" /></p>
<p>本文来自CSDN博客，转载请标明出处：http://blog.csdn.net/lovingprince/archive/2009/03/11/3979833.aspx</p>
   <img src ="http://www.blogjava.net/ywj-316/aggbug/300663.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ywj-316/" target="_blank">junly</a> 2009-11-02 12:01 <a href="http://www.blogjava.net/ywj-316/archive/2009/11/02/300663.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>