﻿<?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-tinguo002-随笔分类-oracle</title><link>http://www.blogjava.net/tinguo002/category/52100.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 08 Jul 2014 01:33:06 GMT</lastBuildDate><pubDate>Tue, 08 Jul 2014 01:33:06 GMT</pubDate><ttl>60</ttl><item><title>ORA-12154</title><link>http://www.blogjava.net/tinguo002/archive/2014/07/07/415568.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 07 Jul 2014 15:07:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2014/07/07/415568.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/415568.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2014/07/07/415568.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/415568.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/415568.html</trackback:ping><description><![CDATA[<p>最近在安装完Oracle Developer Suite之后，就无法登录系统，输入帐号登录发生错误：ORA-12154:TNS:无法解析指定的连接标帜符。</p>
<p>从网上查看说一般是因为 配置文件中没有对应的实例名，然后我就输入C:/tnsping myoracle(我的ora实例名)，查看tnsnames.ora和sqlnet.ora是否配置正确，结果报错，提示：TNS-03505:无法解析名称 说明配置文件有误。</p>
<p>然后我就查看%Oracle_Home%/Db_1/NetWork/admin/TNSNAMES.ORA 文件，发现其中包含我需要登录的实例名。我在尝试tnsping命令，<span style="background-color: yellow">发现其查看到的参数文件sqlnet.ora不是我默认安装的oracle下面的sqlnet.ora</span>，而是Oracle Developer Suite目录下NetWork文件夹下面的sqlnet.ora文件，<span style="background-color: yellow">把安装目录下的tnsnames.ora中的实例配置内容拷贝过去，OK.</span></p>
<p>MYORACLE =<br />&nbsp; (DESCRIPTION =<br />&nbsp;&nbsp;&nbsp; (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))<br />&nbsp;&nbsp;&nbsp; (CONNECT_DATA =<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (SERVER = DEDICATED)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (SERVICE_NAME = MYORACLE)<br />&nbsp;&nbsp;&nbsp; )<br />&nbsp; )</p>
<p>至于为什么会修改为使用那个目录下的参数文件，还没有研究怎么处理。先记下处理过程。</p>
<p>本篇文章来源于 Linux公社网站(<a href="http://www.linuxidc.com">www.linuxidc.com</a>)&nbsp; 原文链接：<a href="http://www.linuxidc.com/Linux/2012-12/75562.htm">http://www.linuxidc.com/Linux/2012-12/75562.htm</a></p><img src ="http://www.blogjava.net/tinguo002/aggbug/415568.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2014-07-07 23:07 <a href="http://www.blogjava.net/tinguo002/archive/2014/07/07/415568.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>win7_oracle11g_64位连接32位PLSQL_Developer</title><link>http://www.blogjava.net/tinguo002/archive/2014/05/13/413629.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Tue, 13 May 2014 13:42:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2014/05/13/413629.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/413629.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2014/05/13/413629.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/413629.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/413629.html</trackback:ping><description><![CDATA[文章参数：<a href="http://jingyan.baidu.com/article/fb48e8be4c7c206e622e1491.html">http://jingyan.baidu.com/article/fb48e8be4c7c206e622e1491.html</a><img src ="http://www.blogjava.net/tinguo002/aggbug/413629.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2014-05-13 21:42 <a href="http://www.blogjava.net/tinguo002/archive/2014/05/13/413629.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle导出表结构的几种方法。</title><link>http://www.blogjava.net/tinguo002/archive/2013/12/25/408027.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Wed, 25 Dec 2013 08:16:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/12/25/408027.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/408027.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/12/25/408027.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/408027.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/408027.html</trackback:ping><description><![CDATA[<p>1.在cmd中输入 exp username/password@连接串</p><p>　　回车，在进入如下时，输入no，就ok了</p><p>　　导出表数据(yes/no)：yes&gt; no</p><p>　　2.</p><p>　　进入plsql</p><p>　　找到table那个大项，点出来，下边会罗列出许多表</p><p>　　右键点中你所需要的那个表名</p><p>　　找到DBMS_Metadata</p><p>　　然后选项里有ddl</p><p>　　弹出来那个窗口就是你的表结构，拷贝出来直接在另一个库里执行就可以啦</p><p>　　-----------------------------补充------------------------</p><p>　　PLSQL里</p><p>　　tools下</p><p>　　export user objects of</p><p>　　按shift批量选择表</p><p>　　执行就行了</p><p>　　3</p><p>　　exp/imp工具；</p><p>　　带参数：rows=y &#8212;&#8212; 带数据导出导入；</p><p>　　rows=n &#8212;&#8212; 不带数据的导出导入，只移植结构</p><p>　　只导出3张表的结构：</p><p>　　exp <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#47;&#112;&#97;&#115;&#119;&#111;&#114;&#100;&#64;&#100;&#98;&#83;&#101;&#114;&#118;&#101;&#114;&#78;&#97;&#109;&#101;">user/pasword@dbServerName</a> owner=user tables=(tb1,tb2,tb3) rows=n file=c:\1.dmp</p><p>　　连带数据导出：</p><p>　　exp <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#47;&#112;&#97;&#115;&#119;&#111;&#114;&#100;&#64;&#100;&#98;&#83;&#101;&#114;&#118;&#101;&#114;&#78;&#97;&#109;&#101;">user/pasword@dbServerName</a> owner=user tables=(tb1,tb2,tb3) rows=y file=c:\2.dmp</p><p>　　imp <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#50;&#47;&#112;&#97;&#115;&#119;&#111;&#114;&#100;&#64;&#100;&#98;&#83;&#101;&#114;&#118;&#101;&#114;&#78;&#97;&#109;&#101;&#50;">user2/pasword@dbServerName2</a> fromuser=user touser=user2 file=c:\1.dmp</p><p>　　或者</p><p>　　imp <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#50;&#47;&#112;&#97;&#115;&#119;&#111;&#114;&#100;&#64;&#100;&#98;&#83;&#101;&#114;&#118;&#101;&#114;&#78;&#97;&#109;&#101;&#50;">user2/pasword@dbServerName2</a> fromuser=user touser=user2 file=c:\2.dmp</p><p>　　3</p><p>　　方法一：</p><p>　　exp userid=scott/tiger owner=scott</p><p>　　imp userid=scott/tiger full=y indexfile=scott.sql</p><p>　　&#8230;&#8230;</p><p>　　more scott.sql</p><p>　　REM&nbsp;&nbsp; CREATE TABLE "SCOTT"."BONUS" ("ENAME" VARCHAR2(10), "JOB"</p><p>　　REM&nbsp;&nbsp; VARCHAR2(9), "SAL" NUMBER, "COMM" NUMBER) PCTFREE 10 PCTUSED 40</p><p>　　REM&nbsp;&nbsp; INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST</p><p>　　REM&nbsp;&nbsp; GROUPS 1) TABLESPACE "USERS" LOGGING NOCOMPRESS ;</p><p>　　REM&nbsp;&nbsp; ... 0 rows</p><p>　　REM&nbsp;&nbsp; CREATE TABLE "SCOTT"."DEPT" ("DEPTNO" NUMBER(2, 0), "DNAME"</p><p>　　REM&nbsp;&nbsp; VARCHAR2(14), "LOC" VARCHAR2(13)) PCTFREE 10 PCTUSED 40 INITRANS 1</p><p>　　REM&nbsp;&nbsp; MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1)</p><p>　　REM&nbsp;&nbsp; TABLESPACE "USERS" LOGGING NOCOMPRESS ;</p><p>　　REM&nbsp;&nbsp; ... 4 rows</p><p>　　REM   CREATE TABLE "SCOTT"."DUMMY" ("DUMMY" NUMBER) PCTFREE 10 PCTUSED 40</p><p>　　REM&nbsp;&nbsp; INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST</p><p>　　REM&nbsp;&nbsp; GROUPS 1) TABLESPACE "USERS" LOGGING NOCOMPRESS ;</p><p>　　REM&nbsp;&nbsp; ... 1 rows</p><p>　　REM&nbsp;&nbsp; CREATE TABLE "SCOTT"."EMP" ("EMPNO" NUMBER(4, 0) NOT NULL ENABLE,</p><p>　　REM&nbsp;&nbsp; "ENAME" VARCHAR2(10), "JOB" VARCHAR2(9), "MGR" NUMBER(4, 0),</p><p>　　REM&nbsp;&nbsp; "HIREDATE" DATE, "SAL" NUMBER(7, 2), "COMM" NUMBER(7, 2), "DEPTNO"</p><p>　　REM&nbsp;&nbsp; NUMBER(2, 0)) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255</p><p>　　REM&nbsp;&nbsp; STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE</p><p>　　REM&nbsp;&nbsp; "USERS" LOGGING NOCOMPRESS ;</p><p>　　REM&nbsp;&nbsp; ... 14 rows</p><p>　　REM&nbsp;&nbsp; CREATE TABLE "SCOTT"."SALGRADE" ("GRADE" NUMBER, "LOSAL" NUMBER,</p><p>　　REM&nbsp;&nbsp; "HISAL" NUMBER) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255</p><p>　　REM&nbsp;&nbsp; STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE</p><p>　　REM&nbsp;&nbsp; "USERS" LOGGING NOCOMPRESS ;</p><p>　　REM&nbsp;&nbsp; ... 5 rows</p><p>　　&#8230;&#8230;&#8230;&#8230;</p><p>　　把前面的REM去了，再去掉最后一行，创建表的DDL就OK了。</p><p>　　方法二：</p><p>　　set pagesize 0</p><p>　　set long 90000</p><p>　　set feedback off</p><p>　　set echo off</p><p>　　spool get_allddl.sql</p><p>　　connect <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#85;&#83;&#69;&#82;&#78;&#65;&#77;&#69;&#47;&#80;&#65;&#83;&#83;&#87;&#79;&#82;&#68;&#64;&#83;&#73;&#68;">USERNAME/PASSWORD@SID</a>;</p><p>　　SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)</p><p>　　FROM USER_TABLES u;</p><p>　　SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name)</p><p>　　FROM USER_INDEXES u;</p><p>　　spool off;</p><p>　　My Test:</p><p>　　set pagesize 0</p><p>　　set long 90000</p><p>　　set feedback off</p><p>　　set echo off</p><p>　　spool get_allddl.sql</p><p>　　connect <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#117;&#115;&#101;&#114;&#110;&#97;&#109;&#101;&#47;&#112;&#97;&#115;&#115;&#119;&#111;&#114;&#100;&#64;&#100;&#97;&#116;&#97;&#98;&#97;&#115;&#101;">username/password@database</a>;</p><p>　　SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)</p><p>　　FROM USER_TABLES u where table_name = 'USER_INFO';</p><p>　　spool off;</p><p>　　SET HEADING OFF;</p><p>　　SET ECHO OFF;</p><p>　　SET LONG 90000;</p><p>　　SPOOL D:\test.txt</p><p>　　SELECT dbms_metadata.get_ddl('TABLE','USER_INFO') FROM SYS.DBA_USERS WHERE USERNAME = 'GINGKO';</p><p>　　SPOOL OFF;</p><img src ="http://www.blogjava.net/tinguo002/aggbug/408027.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-12-25 16:16 <a href="http://www.blogjava.net/tinguo002/archive/2013/12/25/408027.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle在导入时指定不导入某张表</title><link>http://www.blogjava.net/tinguo002/archive/2013/12/16/407627.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 16 Dec 2013 03:11:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/12/16/407627.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/407627.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/12/16/407627.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/407627.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/407627.html</trackback:ping><description><![CDATA[原文：<a href="http://www.itpub.net/forum.php?mod=viewthread&amp;tid=1762028">http://www.itpub.net/forum.php?mod=viewthread&amp;tid=1762028</a><br /><br />1. 先手动重建表结构，因为这张表不需要导入，表结构可以随表写，目的是使表名存在:<br />create table table_name (x int); --table_name为不需要导入的表。<br /><br />2. 导入的时候加参数ignore=n<br /><br />quote:<br /><font color="#000">ignore参数 </font><br /><font color="#000">Oracle在恢复数据的过程中，当恢复某个表时，该表已经存在，就要根据ignore参数的设置来决定如何操作。 </font><br /><font color="#000">若ignore=y，Oracle不执行CREATE TABLE语句，直接将数据插入到表中，如果插入的记录违背了约束条件，比如主键约束，则出错的记录不会插入，但合法的记录会添加到表中。 </font><br /><font color="#000">若ignore=n，Oracle不执行CREATE TABLE语句，同时也不会将数据插入到表中，而是忽略该表的错误，继续恢复下一个表。</font><br /><font color="#000"><br /></font><br /><font color="#000">3. 全部导入完之后，删除该表即可。</font><br /><font color="#000"><br /></font><br /><font color="#000">说明：一般情况下，不需要导入某张表，是因为这张表数据量庞大，但是没有导入需求。所以可以使用以上方法导入。如果表很小，导入也无妨。</font><img src ="http://www.blogjava.net/tinguo002/aggbug/407627.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-12-16 11:11 <a href="http://www.blogjava.net/tinguo002/archive/2013/12/16/407627.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>手动重建em资料库</title><link>http://www.blogjava.net/tinguo002/archive/2013/12/12/407512.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Thu, 12 Dec 2013 12:08:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/12/12/407512.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/407512.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/12/12/407512.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/407512.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/407512.html</trackback:ping><description><![CDATA[<pre style="padding-bottom: 0px; text-transform: none; background-color: rgb(241,254,221); text-indent: 0px; margin: 0px 0px 10px; padding-left: 0px; padding-right: 0px; font: 14px/24px arial, 'courier new', courier, 宋体, monospace; word-wrap: break-word; white-space: pre-wrap; letter-spacing: normal; color: rgb(51,51,51); word-spacing: 0px; padding-top: 0px; -webkit-text-stroke-width: 0px" id="best-content-678997887" class="best-text mb-10" accuse="aContent">1， 删除建立失败的em档案库：<br /><br /> C:\Documents and Settings\Administrator&gt;emca -deconfig dbcontrol db -repos drop <br /><br />EMCA 开始于 2011-4-23 11:19:18<br /><br />EM Configuration Assistant, 11.1.0.5.0 正式版<br /><br />版权所有 (c) 2003, 2005, Oracle。保留所有权利。 <br /><br />输入以下信息:<br /><br />数据库 SID: verafzy<br /><br />监听程序<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E7%AB%AF%E5%8F%A3%E5%8F%B7&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="2">端口号</a>: 1521<br /><br />SYS 用户的口令:<br /><br />SYSMAN 用户的口令:<br /><br />SYSMAN 用户的口令:<br /><br />是否继续? [是(Y)/否(N)]: y<br /><br />2009-7-23 11:19:40 oracle.sysman.emcp.EMConfig perform<br /><br />信息: 正在将此操作记录到 E:\app\Administrator\cfgtoollogs\emca\verafzy\emca_2011-4-23 _11_19_17.log。<br /><br />2011-4-23  11:19:42 oracle.sysman.emcp.util.DBControlUtil stopOMS<br /><br />信息: 正在停止 Database Control (此操作可能需要一段时间)...<br /><br />2011-4-23  11:20:23 oracle.sysman.emcp.EMReposConfig invoke<br /><br />信息: 正在删除 EM 资料档案库 (此操作可能需要一段时间)...<br /><br />2011-4-23  11:24:42 oracle.sysman.emcp.EMReposConfig invoke<br /><br />信息: 已成功删除资料档案库<br /><br />已成功完成 Enterprise Manager 的配置<br /><br />EMCA 结束于 2011-4-23  11:24:56<br /><br />2， 重新创建em档案库：<br /><br />   C:\Documents and Settings\Administrator&gt;emca -config dbcontrol db -repos create <br /><br />EMCA 开始于 2011-4-23 11:26:55<br /><br />EM Configuration Assistant, 11.1.0.5.0 正式版<br /><br />版权所有 (c) 2003, 2005, Oracle。保留所有权利。 <br /><br />输入以下信息:<br /><br />数据库 SID: verafzy<br /><br />监听程序<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E7%AB%AF%E5%8F%A3%E5%8F%B7&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="2">端口号</a>: 1521<br /><br />SYS 用户的口令:<br /><br />DBSNMP 用户的口令:<br /><br />SYSMAN 用户的口令:<br /><br />SYSMAN 用户的口令: 通知的<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%9C%B0%E5%9D%80&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="0">电子邮件地址</a> (可选):<br /><br />通知的发件 (SMTP) 服务器 (可选):<br /><br />----------------------------------------------------------------- <br /><br />已指定以下设置 <br /><br />数据库 ORACLE_HOME ................ E:\app\Administrator\product\11.1.0\db_1 <br /><br />本地<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E4%B8%BB%E6%9C%BA%E5%90%8D&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="1">主机名</a> ................ PC-200901030636<br /><br />监听程序<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E7%AB%AF%E5%8F%A3%E5%8F%B7&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="2">端口号</a> ................ 1521<br /><br />数据库 SID ................ verafzy<br /><br />通知的<a style="color: rgb(45,100,179); text-decoration: none" class="inner-link decor-none" href="http://zhidao.baidu.com/search?word=%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%9C%B0%E5%9D%80&amp;fr=qb_search_exp&amp;ie=utf8" rel="nofollow" target="_blank" log="pos:innerLink" data-word="0">电子邮件地址</a> ...............<br /><br />通知的发件 (SMTP) 服务器 ...............<br /><br />是否继续? [是(Y)/否(N)]: y</pre><img src ="http://www.blogjava.net/tinguo002/aggbug/407512.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-12-12 20:08 <a href="http://www.blogjava.net/tinguo002/archive/2013/12/12/407512.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle批量插入</title><link>http://www.blogjava.net/tinguo002/archive/2013/12/02/407098.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 02 Dec 2013 05:59:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/12/02/407098.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/407098.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/12/02/407098.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/407098.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/407098.html</trackback:ping><description><![CDATA[--添加<br />&nbsp;--dept_parent：父级部门unid，systemid：子系统unid<br />Insert into HZ.U_DEPT t(t.dept_unid,t.dept_name,t.dept_parent) <br />select e.seq_newsid.nextval,m.deptname,'147EDACDCE310C5B13AF9A4465901145' from e.e_dept m where m.systemid = 'B3C50DE07CAFA629A22C6295020F6144'<br /><img src ="http://www.blogjava.net/tinguo002/aggbug/407098.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-12-02 13:59 <a href="http://www.blogjava.net/tinguo002/archive/2013/12/02/407098.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORACLE SEQUENCE用法 </title><link>http://www.blogjava.net/tinguo002/archive/2013/12/02/407096.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 02 Dec 2013 05:56:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/12/02/407096.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/407096.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/12/02/407096.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/407096.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/407096.html</trackback:ping><description><![CDATA[<a id="cb_post_title_url" class="postTitle2" href="http://www.cnblogs.com/hyzhou/archive/2012/04/12/2444158.html">ORACLE SEQUENCE用法</a><div id="cnblogs_post_body"><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>在oracle中sequence就是序号，每次取的时候它会自动增加。sequence与表没有关系。<span class="Apple-converted-space"> </span></p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'><strong>1、Create Sequence</strong></p><div style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp; 首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限。</div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp; 创建语句如下：<span class="Apple-converted-space"> </span></p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><div style='font: 12px/18px "Courier New"; margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; overflow: auto; word-spacing: 0px; white-space: normal; max-width: 900px; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);' class="cnblogs_code"><div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a title="复制代码" href="javascript:void(0);"><img alt="复制代码" src="http://common.cnblogs.com/images/copycode.gif" /></a></span></div><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>CREATE</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> SEQUENCE seqTest<br />INCREMENT </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>BY</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>1</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> 每次加几个</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>START </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>WITH</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>1</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> 从1开始计数</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>NOMAXvalue </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> 不设置最大值</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>NOCYCLE </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> 一直累加，不循环</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>CACHE </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>10</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>; </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>设置缓存cache个序列，如果系统down掉了或者其它情况将会导致序列不连续，也可以设置为---------NOCACHE</span></div><div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a title="复制代码" href="javascript:void(0);"><img alt="复制代码" src="http://common.cnblogs.com/images/copycode.gif" /></a></span></div></div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><div style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'><div> </div><p style="margin: 5px auto; text-indent: 0px;">2、得到Sequence值<span class="Apple-converted-space"> </span></p><p style="margin: 5px auto; text-indent: 0px;">定义好sequence后，你就可以用currVal，nextVal取得值。<br />&nbsp;&nbsp;&nbsp; CurrVal：返回 sequence的当前值<span class="Apple-converted-space"> </span><br />&nbsp;&nbsp;&nbsp; NextVal：增加sequence的值，然后返回 增加后sequence值<span class="Apple-converted-space"> </span></p><div>&nbsp; 得到值语句如下：</div><div style='margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); overflow: auto; font-family: "Courier New"; font-size: 12px; max-width: 900px; background-color: rgb(245, 245, 245);' class="cnblogs_code"><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>SELECT</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> Sequence名称.CurrVal </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>FROM</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> DUAL;<span class="Apple-converted-space"> </span><br /></span></div></div><p style="margin: 5px auto; text-indent: 0px;">&nbsp; 如得到上边创建Sequence值的语句为：</p><div style='margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); overflow: auto; font-family: "Courier New"; font-size: 12px; max-width: 900px; background-color: rgb(245, 245, 245);' class="cnblogs_code"><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>select</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> seqtest.currval </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>from</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> dual</span></div></div><p style="margin: 5px auto; text-indent: 0px;"> </p><div> </div><p style="margin: 5px auto; text-indent: 0px;">在Sql语句中可以使用sequence的地方：<span class="Apple-converted-space"> </span><br />&nbsp;&nbsp;&nbsp; - 不包含子查询、snapshot、VIEW的 SELECT 语句<span class="Apple-converted-space"> </span><br />&nbsp;&nbsp;&nbsp; - INSERT语句的子查询中<span class="Apple-converted-space"> </span><br />&nbsp;&nbsp;&nbsp; - INSERT语句的values中<span class="Apple-converted-space"> </span><br />&nbsp;&nbsp;&nbsp; - UPDATE 的 SET中</p><p style="margin: 5px auto; text-indent: 0px;">如在插入语句中</p><p style="margin: 5px auto; text-indent: 0px;"> </p><div style='margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); overflow: auto; font-family: "Courier New"; font-size: 12px; max-width: 900px; background-color: rgb(245, 245, 245);' class="cnblogs_code"><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>insert</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>into</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> 表名(id,name)</span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>values</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>(<strong>seqtest.Nextval</strong>,</span><span style='color: rgb(255, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>'</span><span style='color: rgb(255, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>sequence 插入测试</span><span style='color: rgb(255, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>'</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>);</span></div></div><p style="margin: 5px auto; text-indent: 0px;"> </p><p style="margin: 5px auto; text-indent: 0px;"> </p><p style="margin: 5px auto; text-indent: 0px;"> 注：</p><div>&nbsp;&nbsp;&nbsp; - 第一次NEXTVAL返回的是初始值；随后的NEXTVAL会自动增加你定义的INCREMENT BY值，然后返回增加后的值。</div><p style="margin: 5px auto; text-indent: 0px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CURRVAL 总是返回当前SEQUENCE的值，但是在第一次NEXTVAL初始化之后才能使用CURRVAL，否则会出错。</p><p style="margin: 5px auto; text-indent: 0px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 一次NEXTVAL会增加一次 SEQUENCE的值，所以如果你在同一个语句里面使用多个NEXTVAL，其值就是不一样的。<br />&nbsp;&nbsp;&nbsp; - 如果指定CACHE值，ORACLE就可以预先在内存里面放置一些sequence，这样存取的快些。cache里面的取完后，oracle自动再取一组 到cache。 使用cache或许会跳号， 比如数据库突然不正常down掉（shutdown abort),cache中的sequence就会丢失. 所以可以在create sequence的时候用nocache防止这种情况。</p><p style="margin: 5px auto; text-indent: 0px;"> </p><p style="margin: 5px auto; text-indent: 0px;"> </p></div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><div style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>3、Alter Sequence<span class="Apple-converted-space"> </span><br />&nbsp;&nbsp;&nbsp; 拥有ALTER ANY SEQUENCE 权限才能改动sequence. 可以alter除start至以外的所有sequence参数.如果想要改变start值，必须 drop sequence 再 re-create。</div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>例：</p><div style='font: 12px/18px "Courier New"; margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; overflow: auto; word-spacing: 0px; white-space: normal; max-width: 900px; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);' class="cnblogs_code"><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>alter</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> sequence SEQTEST maxvalue </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>9999999</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>;</span></div></div><div style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp; 另： SEQUENCE_CACHE_ENTRIES参数，设置能同时被cache的sequence数目。</div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><div style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>4、Drop Sequence</div><div style='font: 12px/18px "Courier New"; margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; overflow: auto; word-spacing: 0px; white-space: normal; max-width: 900px; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);' class="cnblogs_code"><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>DROP</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> SEQUENCE seqTest;<span class="Apple-converted-space"> </span><br /></span></div></div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>5、<span style="color: rgb(0, 0, 0);">一个例子</span></p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><div style='font: 12px/18px "Courier New"; margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; overflow: auto; word-spacing: 0px; white-space: normal; max-width: 900px; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);' class="cnblogs_code"><div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a title="复制代码" href="javascript:void(0);"><img alt="复制代码" src="http://common.cnblogs.com/images/copycode.gif" /></a></span></div><div><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>create</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> sequence SEQ_ID<br />minvalue </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>1</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br />maxvalue </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>99999999</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br />start </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>with</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>1</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br />increment </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>by</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>1</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br />nocache<br /></span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>order</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>;<br /><br />建解发器代码为：<br /><br /></span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>create</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(128, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>or</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(255, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>replace</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>trigger</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> tri_test_id<br />&nbsp; before </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>insert</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>on</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> S_Depart&nbsp;&nbsp; </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>S_Depart 是表名</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>&nbsp; </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>for</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> each row<br /></span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>declare</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br />&nbsp; nextid </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>number</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>;<br /></span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>begin</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br />&nbsp; </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>IF</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> :new.DepartId </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>IS</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> NULLor :new.DepartId</span><span style='color: rgb(128, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>=</span><span style='color: rgb(128, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px; font-weight: bold;'>0</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>THEN</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>DepartId是列名</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>&nbsp;&nbsp;&nbsp; </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>select</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> SEQ_ID.nextval </span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>--</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>SEQ_ID正是刚才创建的</span><span style='color: rgb(0, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'><br /></span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>&nbsp;&nbsp;&nbsp; </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>into</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> nextid<br />&nbsp;&nbsp;&nbsp; </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>from</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> sys.dual;<br />&nbsp;&nbsp;&nbsp; :new.DepartId:</span><span style='color: rgb(128, 128, 128); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>=</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>nextid;<br />&nbsp; </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>end</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> </span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>if</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>;<br /></span><span style='color: rgb(0, 0, 255); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'>end</span><span style='color: rgb(0, 0, 0); line-height: 1.5; font-family: "Courier New"; font-size: 12px;'> tri_test_id;<br /></span></div><div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a title="复制代码" href="javascript:void(0);"><img alt="复制代码" src="http://common.cnblogs.com/images/copycode.gif" /></a></span></div></div><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp; <span class="Apple-converted-space"> </span><span style="color: rgb(0, 0, 0);">OK，上面的代码就可以实现自动递增的功能了。</span></p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'> </p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp; 注：:new 代表 数据改变后的新值，相对应的有 :old 原值</p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; := 代表 赋值</p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :<span style="color: rgb(0, 0, 0);">nextid</span>表示引用sqlplus中定义的变量<span class="Apple-converted-space"> <br /></span></p><p style='font: 12px/18px Verdana, "Lucida Grande", Arial, Helvetica, sans-serif; margin: 5px auto; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; orphans: 2; widows: 2; font-size-adjust: none; font-stretch: normal; background-color: rgb(255, 255, 255);'><span class="Apple-converted-space">　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　参考文档：http://www.cnblogs.com/scottckt/archive/2011/09/20/2182168.html</span></p></div><img src ="http://www.blogjava.net/tinguo002/aggbug/407096.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-12-02 13:56 <a href="http://www.blogjava.net/tinguo002/archive/2013/12/02/407096.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>left join加上where条件的困惑</title><link>http://www.blogjava.net/tinguo002/archive/2013/09/23/404331.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 23 Sep 2013 08:09:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/09/23/404331.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/404331.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/09/23/404331.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/404331.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/404331.html</trackback:ping><description><![CDATA[<div class="content-head clearfix">原文：<a href="http://hi.baidu.com/dianai2001/item/6c2ddd844a80ced45e0ec136">http://hi.baidu.com/dianai2001/item/6c2ddd844a80ced45e0ec136</a><br /><div class="content-other-info"><span>2009-12-31 10:26</span> </div><br /><h2 class="title content-title">left join加上where条件的困惑</h2></div><br /><div id="content" class="content mod-cs-content text-content clearfix"><br /><p>left join的困惑：一旦加上where条件，则显示的结果等于inner join</p><br /><p>将where 换成 and&nbsp; </p><br /><p>用where 是先连接然后再筛选&nbsp;&nbsp; <br />用and 是先筛选再连接</p><br /><p>数据库在通过连接两张或多张表来返回记录时，都会生成一张中间的临时表，然后再将这张临时表返回给用户。</p><br /><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在使用left jion时，on和where条件的区别如下：</p><br /><p>1、 on条件是在生成临时表时使用的条件，它不管on中的条件是否为真，都会返回左边表中的记录。</p><br /><p>2、where条件是在临时表生成好后，再对临时表进行过滤的条件。这时已经没有left <br />join的含义（必须返回左边表的记录）了，条件不为真的就全部过滤掉。</p><br /><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 假设有两张表：</p><br /><p>表1 tab1：</p><br /><p>id size</p><br /><p>1 10</p><br /><p>2 20</p><br /><p>3 30</p><br /><p>表2 tab2：</p><br /><p>size name</p><br /><p>10 AAA</p><br /><p>20 BBB</p><br /><p>20 CCC</p><br /><p><br />两条SQL:<br />1、select * form tab1 left join tab2 on (tab1.size = tab2.size) <br />where tab2.name=&#8217;AAA&#8217;<br />2、select * form tab1 left join tab2 on (tab1.size = <br />tab2.size and tab2.name=&#8217;AAA&#8217;)</p><br /><p>第一条SQL的过程：</p><br /><p>1、中间表<br />on条件: <br />tab1.size = tab2.size</p><br /><p>tab1.id&nbsp;&nbsp;&nbsp; tab1.size&nbsp;&nbsp;&nbsp; tab2.size&nbsp;&nbsp;&nbsp;&nbsp; tab2.name</p><br /><p>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AAA</p><br /><p>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BBB</p><br /><p>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CCC</p><br /><p>3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (null)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (null)</p><br /><p>2、再对中间表过滤<br />where 条件：<br />tab2.name=&#8217;AAA&#8217;</p><br /><p>tab1.id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tab1.size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tab2.size&nbsp;&nbsp;&nbsp;&nbsp; tab2.name</p><br /><p>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AAA</p><br /><p><br />第二条SQL的过程：</p><br /><p>1、中间表<br />on条件: <br />tab1.size = tab2.size and <br />tab2.name=&#8217;AAA&#8217;<br />(条件不为真也会返回左表中的记录)</p><br /><p>tab1.id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tab1.size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tab2.size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tab2.name</p><br /><p>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AAA</p><br /><p>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (null)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (null)</p><br /><p>3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (null)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (null)</p><br /><p>&nbsp;&nbsp;&nbsp;&nbsp; 其实以上结果的关键原因就是left join,right join,full <br />join的特殊性，不管on上的条件是否为真都会返回left或right表中的记录，full则具有left和right的特性的并集。 而inner <br />jion没这个特殊性，则条件放在on中和where中，返回的结果集是相同的。</p></div><img src ="http://www.blogjava.net/tinguo002/aggbug/404331.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-09-23 16:09 <a href="http://www.blogjava.net/tinguo002/archive/2013/09/23/404331.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORA-00904标识符无效 </title><link>http://www.blogjava.net/tinguo002/archive/2013/09/23/404314.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 23 Sep 2013 03:10:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/09/23/404314.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/404314.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/09/23/404314.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/404314.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/404314.html</trackback:ping><description><![CDATA[ORA-00904标识符无效&nbsp; :<br />在跨机器实例通过dblink访问不同的数据库时（A--B两个不同物理机器上的实例），如果后期更新了B机器上的表的字段（修改字段名称或者增加字段）, 那么在A实例下存储过程中引用新增的这些字段就可能出现ora-00904错误，解决办法：在B实例下把表rename成新名称，再rename成原来的名称，然后在A实例下重新编译过程，OK!<img src ="http://www.blogjava.net/tinguo002/aggbug/404314.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-09-23 11:10 <a href="http://www.blogjava.net/tinguo002/archive/2013/09/23/404314.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle的nvl和sql server的isnull （转）</title><link>http://www.blogjava.net/tinguo002/archive/2013/05/20/399533.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 20 May 2013 12:47:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/05/20/399533.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/399533.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/05/20/399533.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/399533.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/399533.html</trackback:ping><description><![CDATA[<p><a href="http://www.cnblogs.com/sunyjie/archive/2012/03/26/2417688.html">http://www.cnblogs.com/sunyjie/archive/2012/03/26/2417688.html</a><br /><br />最近公司在做Oracle数据库相关产品，在这里作以小结： </p><h3><strong>ISNULL（）函数</strong></h3><p><strong>语法&nbsp;&nbsp;&nbsp; <br /></strong>ISNULL ( check_expression , replacement_value)&nbsp;&nbsp;&nbsp; <br /><strong>参数</strong><br />&nbsp;&nbsp; check_expression&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp; 将被检查是否为&nbsp;&nbsp;&nbsp; NULL的表达式。check_expression&nbsp;&nbsp;&nbsp; 可以是任何类型的。&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp; replacement_value&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp; 在&nbsp;&nbsp;&nbsp; check_expression&nbsp;&nbsp;&nbsp; 为&nbsp;&nbsp;&nbsp; NULL时将返回的表达式。replacement_value&nbsp;&nbsp;&nbsp; 必须与&nbsp;&nbsp;&nbsp; check_expresssion&nbsp;&nbsp;&nbsp; 具有相同的类型。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br /><strong>返回类型</strong><br />&nbsp;&nbsp; 返回与&nbsp;&nbsp;&nbsp; check_expression&nbsp;&nbsp;&nbsp; 相同的类型。&nbsp;&nbsp;&nbsp; <br /><strong>注释</strong><br />&nbsp;&nbsp; 如果&nbsp;&nbsp;&nbsp; check_expression&nbsp;&nbsp;&nbsp; 不为&nbsp;&nbsp;&nbsp; NULL，那么返回该表达式的值；否则返回&nbsp;&nbsp;&nbsp; replacement_value。</p><p>----------------------------------------------------------------------------------------------</p><p>----------------------------------------------------------------------------------------------</p><h3>nvl( ) 函数</h3><p>从两个表达式返回一个非 null 值。&nbsp;&nbsp; <br /><strong>语法</strong><br />NVL(eExpression1, eExpression2)&nbsp;&nbsp;&nbsp; <br /><strong>参数</strong><br />eExpression1, eExpression2&nbsp;&nbsp;&nbsp; <br />如果 eExpression1 的计算结果为 null 值，则 NVL( ) 返回 eExpression2。如果 eExpression1 的计算结果不是 null 值，则返回 eExpression1。eExpression1 和 eExpression2 可以是任意一种数据类型。如果 eExpression1 与 eExpression2 的结果皆为 null 值，则 NVL( ) 返回 .NULL.。&nbsp;&nbsp;&nbsp; <br /><strong>返回值类型</strong><br />字符型、日期型、日期时间型、数值型、货币型、逻辑型或 null 值&nbsp;&nbsp;&nbsp; <br /><strong>说明</strong><br />在不支持 null 值或 null 值无关紧要的情况下，可以使用 NVL( ) 来移去计算或操作中的 null 值。</p><p>select nvl(a.name,'空得') as name from student a join school b on a.ID=b.ID</p><p>注意：两个参数得类型要匹配</p><img src ="http://www.blogjava.net/tinguo002/aggbug/399533.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-05-20 20:47 <a href="http://www.blogjava.net/tinguo002/archive/2013/05/20/399533.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于 oracle between and的用法！  </title><link>http://www.blogjava.net/tinguo002/archive/2013/04/15/397835.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 15 Apr 2013 02:15:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/04/15/397835.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/397835.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/04/15/397835.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/397835.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/397835.html</trackback:ping><description><![CDATA[<p><a href="http://linhan8888.blog.163.com/blog/static/40020680201201811323793/">http://linhan8888.blog.163.com/blog/static/40020680201201811323793/</a><br /><br />oracle date等类型是带时间部分的，所以你这个2011-07-05 只是相当于2011-07-05&nbsp; <br />00:00:00这个时刻，按你的写法大于这个时刻的是不会删除的。如果你确实要删除2011-07-05的建议你用以下写法：<br />delete from <br />jf_syslog where&nbsp; inputtime &gt;=date'2011-07-01' and <br />nputtime&lt;date'2011-07-06' <br /><br />如果不担心2011-07-06&nbsp; 00:00:00的也可以<br />delete <br />from jf_syslog where&nbsp; inputtime between date'2011-07-01' and date'2011-07-06' <br /><br /><br />如果效率可以接受，可以先转换成字符串<br />delete from jf_syslog where&nbsp; <br />to_char(inputtime,'yyyymmdd') between '20110701' and '20110705' <br /><br /><br />你可以考虑连接上一个固定的字符串这样的，但是因为时间上是没有24:00:00的，所以还是会有问题的，不如直接在日期上加一天好用</p><br /><p> </p><br /><p> </p><br /><p>a) months_between(date1,date2)：算date1和date2之间的月的数量,可以是小数可以是负数 <br /><br />　　months_between(&#8217;01-sep-95&#8217;,&#8217;11-jan-94&#8217;)=1.9774194 <br /><br />b) <br />add_months(date,n)：为date加上N个月，N只可以是整数 <br />　　 <br />c) <br />next_date(date,&#8217;char&#8217;)：查找date的下一个星期N <br /><br />　　next_date(&#8217;01-sep-95&#8217;,&#8217;FRIDAY&#8217;)=08-SEP-95 <br />　　 <br />d) <br />last_day(date):查找date月的最后一天。 <br />　　 <br />e) rount(date)：把日期四舍五入 <br />　　 <br />f) <br />rount(25-MAY-95&#8217;,&#8217;MONTH&#8217;)=01-JUN-95 <br />　　 <br />g) <br />rount(25-MAY-95&#8217;,&#8217;YEAR&#8217;)=01-JAN-95 <br />　　 <br />h) trunc(date)：把日期截断 <br />　　 <br />i) <br />trunc (25-MAY-95&#8217;,&#8217;MONTH&#8217;)=01-MAY-95 <br />　　 <br />j) trunc <br />(25-MAY-95&#8217;,&#8217;YEAR&#8217;)=01-JAN-95 <br /><br />k) <br />日期中RR与YY的区别，RR格式对日期作类似于舍入的操作，YY格式对日期作类似于截取的操作 <br />　　RR　 YY <br />　　1995 27-oct-95 <br />1995 1995 <br />　　1995 27-oct-17 2017 1917 <br />　　2001 27-oct-17 2017 2017 <br /><br />　　2001 27-oct-95 1995 2095 <br />　　用法：select to_char(sysdate, 'YY') from dual; <br /><br />　　select to_char(to_date('95-11-27', 'RR-MM-DD'), 'YYYY-MM-DD') from dual; <br /><br />　　select to_char(to_date('95-11-27', 'YY-MM-DD'), 'YYYY-MM-DD') from dual; </p><img src ="http://www.blogjava.net/tinguo002/aggbug/397835.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-04-15 10:15 <a href="http://www.blogjava.net/tinguo002/archive/2013/04/15/397835.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle DECODE函数</title><link>http://www.blogjava.net/tinguo002/archive/2013/03/22/396861.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Fri, 22 Mar 2013 07:35:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/03/22/396861.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/396861.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/03/22/396861.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/396861.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/396861.html</trackback:ping><description><![CDATA[<div class="brieftext">转载：<a href="http://database.51cto.com/art/201011/232740.htm">http://database.51cto.com/art/201011/232740.htm</a><br /><p class="f14 green">DECODE是Oracle公司独家提供的功，该函数功能强大，下文对DECODE函数的语法作了详尽的阐述，供您参考学习。</p><p class="ad">&nbsp;</p></div><div class="content bgF8F8F8 f14"><div id="content"><p>Oracle DECODE函数功能很强，下面就为您详细介绍<a href="http://database.51cto.com/art/201011/232632.htm">Oracle</a> <br />DECODE函数的用法，希望可以让您对Oracle DECODE函数有更多的了解。</p><p>Oracle DECODE函数</p><br /><p>Oracle <br />DECODE函数是Oracle公司独家提供的功能，它是一个功能很强的函数。它虽然不是SQL的标准，但对于性能非常有用。到目前，其他的数据库供应商还不能提供类似DECODE的功能，甚至有的数据库的供应商批评Oracle的SQL不标准。实际上，这种批评有些片面或不够水平。就象有些马车制造商抱怨亨利。福特的&#8220;马车&#8221;不标准一样。</p><br /><p>1 DECODE 中的if-then-else逻辑<br />在逻辑编程中，经常用到If &#8211; Then &#8211;Else <br />进行逻辑判断。在DECODE的语法中，实际上就是这样的逻辑处理过程。它的语法如下：<br />DECODE(value, if1, then1, <br />if2,then2, if3,then3, . . . else )<br />Value <br />代表某个表的任何类型的任意列或一个通过计算所得的任何结果。当每个value值被测试，如果value的值为if1，Decode <br />函数的结果是then1；如果value等于if2，Decode函数结果是then2；等等。事实上，可以给出多个if/then <br />配对。如果value结果不等于给出的任何配对时，Decode 结果就返回else 。<br />需要注意的是，这里的if、then及else <br />都可以是函数或计算表达式。<br />含义解释： <br />DECODE(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)</p><br /><p>该函数的含义如下：<br />IF 条件=值1 THEN<br />RETURN(翻译值1)<br />ELSIF 条件=值2 <br />THEN<br />RETURN(翻译值2)<br />......<br />ELSIF 条件=值n THEN<br />RETURN(翻译值n)</p><br /><p>ELSE<br />RETURN(缺省值)<br />END IF</p><br /><p>2 DECODE 的简单例子<br />Oracle系统中就有许多数据字典是使用decode <br />思想设计的，比如记录会话信息的V$SESSION数据字典视图就是这样。我们从《Oracle8i/9i <br />Reference》资料中了解到，当用户登录成功后在V$SESSION中就有该用户的相应记录，但用户所进行的命令操作在该视图中只记录命令的代码 <br />（0&#8212;没有任何操作，2&#8212;Insert&#8230;），而不是具体的命令关键字。因此，我们需要了解当前各个用户的名字及他们所进行的操作时，要用下面命令才能得到 <br />详细的结果：<br />select <br />sid,serial#,username,<br />DECODE(command,<br />0,&#8217;None&#8217;,<br />2,&#8217;Insert&#8217;,<br />3,&#8217;Select&#8217;,<br />6,&#8217;Update&#8217;,<br />7,&#8217;Delete&#8217;,<br />8,&#8217;Drop&#8217;,<br />&#8216;Other&#8217;) <br />cmmand<br />from v$session where username is not null;<br />3 <br />DECODE实现表的转置<br />数据库中的表是由列和行构成的一个二维表。一般列在任何数据库中都是有限的数量，而行的变化较大，如果表很大，行的数量可能大上千万行。同一列的不同行可能有不同的值，而且不是预先定义的。<br />例:住房公积金报表置换实例：<br />1.各个单位在本地经办行进行开户，开户就是将单位的基本信息和职工信息的进行登记；<br />2.每月各个单位的会计到经办行交缴本单位的所有职工的住房公积金，系统记录有每个职工的交缴明细并在每条记录上记录有经办行的代码；<br />3.每月、季、半年及年终都要求将经办行 <br />变为&#8220;列&#8221;给出个月的明细报表：<br />经办行：城西区 城东区 <br />月份：<br />2001.01 xxxx1.xx xxxxx2.xx <br />2001.02 <br />xxxx3.xx xxxxx4.xx <br />。 。 。 。 。 。<br />原来的数据顺序是：<br />城西区2001.01 <br />xxxxx1.xx<br />城东区2001.01 xxxxx2.xx<br />城西区2001.02 xxxxx3.xx<br />城东区2001.02 <br />xxxxx4.xx<br />住房公积金系统记录职工的每月交缴名细的pay_lst表结构是：<br />bank_code varchar2(6)NOT NULL, <br />-- 经办行代码<br />acc_no varchar2(15) not null, -- 单位代码(单位帐号)<br />emp_acc_no <br />varchar2(20) not null, -- 职工帐号<br />tran_date date not null, -- 交缴日期<br />tran_val <br />Number(7,2) not null, -- 交缴额 <br />sys_date date default sysdate, <br />--系统日期<br />oper_id varchar2(10) <br />--操作员代码<br />这样的表结构，一般按照将经办行作为行(row)进行统计是很容易的，但是如果希望将经办行变为列(column)这样的格式来输出就有困难。如果用DECODE函数来处理则变得很简单：<br />我们创建一个视图来对目前的pay_lst表进行查询。将经办行代码变为一些具体的经办行名称即可：<br />CREATE <br />OR REPLACE VIEW bank_date_lst AS<br />Select to_char(tran_date,&#8217;yyyy.mm&#8217;),<br />SUM( <br />DECODE ( bank_code,&#8217;001&#8217;, tran_val,0 )) 城西区，<br />SUM( DECODE ( bank_code,&#8217;002&#8217;, <br />tran_val,0 )) 城南区，<br />SUM( DECODE ( bank_code,&#8217;003&#8217;, tran_val,0 )) 城东区<br />FROM <br />pay_lst<br />GROUP BY <br />to_char(tran_date,&#8217;yyyy.mm&#8217;);<br />建立视图后，可直接对该视图进行查询就可按照列显示出结果。</p></div></div><img src ="http://www.blogjava.net/tinguo002/aggbug/396861.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-03-22 15:35 <a href="http://www.blogjava.net/tinguo002/archive/2013/03/22/396861.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle 1月-12月数据查询</title><link>http://www.blogjava.net/tinguo002/archive/2013/03/19/396683.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Tue, 19 Mar 2013 09:35:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/03/19/396683.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/396683.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/03/19/396683.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/396683.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/396683.html</trackback:ping><description><![CDATA[
 
<div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">StringBuilder&nbsp;sql&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;StringBuilder();<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">select&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;select&nbsp;count(*)&nbsp;from&nbsp;fds_case&nbsp;t&nbsp;where&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;t.belongsystemunid&nbsp;=&nbsp;'28B78C2F0E9ECBA275775794C1058F2A'&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;and&nbsp;(t.occur_time&nbsp;between&nbsp;'2013-01-01'&nbsp;and&nbsp;&nbsp;to_char(last_day(date'2013-01-01'),'YYYY-MM-DD'))&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)&nbsp;as&nbsp;一月份,</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;select&nbsp;count(*)&nbsp;from&nbsp;fds_case&nbsp;t&nbsp;where&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;t.belongsystemunid&nbsp;=&nbsp;'28B78C2F0E9ECBA275775794C1058F2A'</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;and&nbsp;(t.occur_time&nbsp;between&nbsp;'2013-02-01'&nbsp;and&nbsp;&nbsp;to_char(last_day(date'2013-02-01'),'YYYY-MM-DD'))&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)&nbsp;as&nbsp;二月份,</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql.append(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;from&nbsp;dual;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);">&nbsp;substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">4</span><span style="color: rgb(0, 0, 0);">)&nbsp;years,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">01</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月01,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">02</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月02,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">03</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月03,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">04</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月04,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">05</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月05,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">06</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月06,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">07</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月07,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">08</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月08,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">09</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月09,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">10</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月10,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">11</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月11,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(decode(substr(t.create_time,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">6</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">2</span><span style="color: rgb(0, 0, 0);">),&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">12</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">0</span><span style="color: rgb(0, 0, 0);">))&nbsp;月12,<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(128, 0, 0); font-weight: bold;">1</span><span style="color: rgb(0, 0, 0);">)&nbsp;alls<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;FDS_CASE&nbsp;t<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;</span><span style="color: rgb(0, 0, 255);">where</span><span style="color: rgb(0, 0, 0);">&nbsp;t.del&nbsp;</span><span style="color: rgb(128, 128, 128);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">N</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">and</span><span style="color: rgb(0, 0, 0);">&nbsp;t.belongsystemunid&nbsp;</span><span style="color: rgb(128, 128, 128);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">28B78C2F0E9ECBA275775794C1058F2A</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span></div><br /><br /><br /><br /></span></div> 
<img src ="http://www.blogjava.net/tinguo002/aggbug/396683.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-03-19 17:35 <a href="http://www.blogjava.net/tinguo002/archive/2013/03/19/396683.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>取得指定月份的最后一天、在当前日期的基础上加/减月份 </title><link>http://www.blogjava.net/tinguo002/archive/2013/03/18/396606.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Mon, 18 Mar 2013 08:28:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2013/03/18/396606.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/396606.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2013/03/18/396606.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/396606.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/396606.html</trackback:ping><description><![CDATA[<p>转载：<br /><a href="http://blog.csdn.net/szwangdf/article/details/2290533">http://blog.csdn.net/szwangdf/article/details/2290533</a><br /><br />last_day：返回包含了日期参数的月份的最后一天的日期。</p><div style="background: rgb(230, 230, 230); padding: 4px 5.4pt; border: 0.5pt solid windowtext; width: 95%; word-break: break-all;"><div><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);"> last_day(sysdate) </span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);"> dual;<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; LAST_DAY(SYSDATE)<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 128, 128);">--</span><span style="color: rgb(0, 128, 128);">-----------------</span><span style="color: rgb(0, 128, 128);"><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(128, 0, 0); font-weight: bold;">2008</span><span style="color: rgb(128, 128, 128);">/</span><span style="color: rgb(128, 0, 0); font-weight: bold;">02</span><span style="color: rgb(128, 128, 128);">/</span><span style="color: rgb(128, 0, 0); font-weight: bold;">29</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(128, 0, 0); font-weight: bold;">11</span><span style="color: rgb(0, 0, 0);">:</span><span style="color: rgb(128, 0, 0); font-weight: bold;">24</span><span style="color: rgb(0, 0, 0);">:</span><span style="color: rgb(128, 0, 0); font-weight: bold;">04</span><span style="color: rgb(0, 0, 0);"><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; SQL</span><span style="color: rgb(128, 128, 128);">&gt;</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);"> last_day(date</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">1892-02-15</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">) </span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);"> dual;<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; LAST_DAY(DATE</span><span style="color: rgb(255, 0, 0);">'</span><span style="color: rgb(255, 0, 0);">1892-<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; -------------------<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; 1892/02/29 00:00:00<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /></span></div></div><p> </p> add_months：在当前日期的基础上加/减月份，返回加/减后的日期。<div style="background: rgb(230, 230, 230); padding: 4px 5.4pt; border: 0.5pt solid windowtext; width: 95%; word-break: break-all;"><div><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">SQL</span><span style="color: rgb(128, 128, 128);">&gt;</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);"> add_months(sysdate, </span><span style="color: rgb(128, 128, 128);">-</span><span style="color: rgb(128, 0, 0); font-weight: bold;">3</span><span style="color: rgb(0, 0, 0);">) three_months_ago </span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);"> dual;<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; THREE_MONTHS_AGO<br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 128, 128);">--</span><span style="color: rgb(0, 128, 128);">-----------------</span><span style="color: rgb(0, 128, 128);"><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(128, 0, 0); font-weight: bold;">2007</span><span style="color: rgb(128, 128, 128);">/</span><span style="color: rgb(128, 0, 0); font-weight: bold;">11</span><span style="color: rgb(128, 128, 128);">/</span><span style="color: rgb(128, 0, 0); font-weight: bold;">16</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(128, 0, 0); font-weight: bold;">11</span><span style="color: rgb(0, 0, 0);">:</span><span style="color: rgb(128, 0, 0); font-weight: bold;">23</span><span style="color: rgb(0, 0, 0);">:</span><span style="color: rgb(128, 0, 0); font-weight: bold;">16</span><span style="color: rgb(0, 0, 0);"><br /><img alt="" align="top" src="http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif" /></span></div></div><img src ="http://www.blogjava.net/tinguo002/aggbug/396606.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2013-03-18 16:28 <a href="http://www.blogjava.net/tinguo002/archive/2013/03/18/396606.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORACLE 10g下载|ORACLE 10g下载地址|ORACLE 10g官网下载地址 </title><link>http://www.blogjava.net/tinguo002/archive/2012/12/08/392667.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Sat, 08 Dec 2012 13:00:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/12/08/392667.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/392667.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/12/08/392667.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/392667.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/392667.html</trackback:ping><description><![CDATA[
<div class="postTitle">转载自：<a href="http://www.blogjava.net/wangdetian168/archive/2011/03/01/345428.html">http://www.blogjava.net/wangdetian168/archive/2011/03/01/345428.html</a><a id="viewpost1_TitleUrl" class="postTitle2" href="http://www.blogjava.net/wangdetian168/archive/2011/03/01/oracle10g.html"><font color="#646464"><br /><br />ORACLE 10g下载|ORACLE 10g下载地址|ORACLE 10g官网下载地址</font></a> </div><br /><p> </p><br /><p>ORACLE 10g下载地址<br /></p><br /><p><strong>oracle 下载还需要用户名我自己注册了个方便大家使用下载</strong></p><br /><p><strong>user:wangdetian168@gmail.com、<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#53;&#57;&#49;&#57;&#54;&#49;&#52;&#51;&#51;&#64;&#113;&#113;&#46;&#99;&#111;&#109;">591961433@qq.com</a></strong></p><br /><p><strong>pass:qwe123QWE、8796164poP<br /></strong><br />密码是这个 一般不会动了 大家也不用帮我找回密码了 <br />每次都改 <br />也很麻烦的<br />如果有需要可以帮我浏览下 右侧的需要的信息<br /><br />Oracle Database 10g Release 2 (10.2.0.1.0) <br />Enterprise/Standard Edition for Microsoft Windows (32-bit)<br /><br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.zip<br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/10201_client_win32.zip<br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/10201_clusterware_win32.zip<br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/10201_gateways_win32.zip<br /><br />Oracle <br />Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Microsoft <br />Windows (x64)<br /><br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_database.zip<br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_client.zip<br />&nbsp; <br />http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_clusterware.zip<br /><br />Oracle <br />Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Linux <br />x86<br /><br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_database_linux32.zip<br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_client_linux32.zip<br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_gateways_linux32.zip<br /><br />Oracle <br />Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Linux <br />x86-64<br /><br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_database_linux_x86_64.cpio.gz<br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_client_linux_x86_64.cpio.gz<br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_clusterware_linux_x86_64.cpio.gz<br />&nbsp; <br />http://download.oracle.com/otn/linux/oracle10g/10201/10201_gateways_linux_x86_64.cpio.gz<br /><br />Oracle <br />Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for <br />AIX5L<br /><br />&nbsp; <br />http://download.oracle.com/otn/aix/oracle10g/10201/10gr2_aix5l64_database.cpio.gz<br />&nbsp; <br />http://download.oracle.com/otn/aix/oracle10g/10201/10gr2_aix5l64_client.cpio.gz<br />&nbsp; <br />http://download.oracle.com/otn/aix/oracle10g/10201/10gr2_aix5l64_cluster.cpio.gz<br />&nbsp; <br />http://download.oracle.com/otn/aix/oracle10g/10201/10gr2_aix5l64_gateways.cpio.gz<br /><br />Oracle <br />Database 10g Release 2 (10.2.0.2) Enterprise/Standard Edition for Solaris <br />Operating System (x86)<br /><br />&nbsp; <br />http://download.oracle.com/otn/solaris/oracle10g/10202/10202_database_solx86.zip<br />&nbsp; <br />http://download.oracle.com/otn/solaris/oracle10g/10202/10202_client_solx86.zip<br />&nbsp; <br />http://download.oracle.com/otn/solaris/oracle10g/10202/10202_clusterware_solx86.zip<br /><br />Oracle <br />Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Solaris <br />Operating System (x86-64)<br /><br />&nbsp; <br />http://download.oracle.com/otn/solaris/oracle10g/10201/x8664/10201_database_solx86_64.zip<br />&nbsp; <br />http://download.oracle.com/otn/solaris/oracle10g/10201/x8664/10201_client_solx86_64.zip<br />&nbsp; <br /><a href="http://download.oracle.com/otn/solaris/oracle10g/10201/x8664/10201_clusterware_solx86_64.zip"><font color="#6fbc4c">http://download.oracle.com/otn/solaris/oracle10g/10201/x8664/10201_clusterware_solx86_64.zip</font></a></p><font color="#6fbc4c"><img alt="" src="http://www.cnblogs.com/wangdetian168/aggbug/1968155.html?type=1" width="1" height="1" /></font> <br /><p>作者: <a href="http://www.cnblogs.com/wangdetian168/" target="_blank"><font color="#6fbc4c">王德田</font></a> 发表于 <br />2011-03-01 17:06 <a href="http://www.cnblogs.com/wangdetian168/archive/2011/03/01/1968155.html" target="_blank"><font color="#6fbc4c">原文链接</font></a></p> 
 
<img src ="http://www.blogjava.net/tinguo002/aggbug/392667.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-12-08 21:00 <a href="http://www.blogjava.net/tinguo002/archive/2012/12/08/392667.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>修改oracle 10g的字符集</title><link>http://www.blogjava.net/tinguo002/archive/2012/12/07/392623.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Fri, 07 Dec 2012 13:14:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/12/07/392623.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/392623.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/12/07/392623.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/392623.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/392623.html</trackback:ping><description><![CDATA[<div>转载自：<a href="http://blog.163.com/liuqiuliang_yss.popo/blog/static/4581691020095195107618/">http://blog.163.com/liuqiuliang_yss.popo/blog/static/4581691020095195107618/</a><p>问题：</p><p>IMP-00019: 由于 ORACLE 错误 12899 而拒绝行<br />IMP-00003: 遇到 ORACLE 错误 12899<br />ORA-12899: 列 "JACKEYJ"."JK_REGISTER"."OPNAME" 的值太大 (实际值: 21, 最大值: 20)</p><p>列 1 523</p><p>从9i环境下exp出来的数据，imp到10g数据库的时候就出现这个错误。</p><p>&nbsp;</p><p>解决方案：</p><p>修改oracle 10g的字符集<br />Oracle<br />修改数据库字符集为：ZHS16GBK<br />查看服务器端字符集SQL &gt; select * from V$NLS_PARAMETERS<br />修改：$sqlplus /nolog<br />SQL&gt;conn / as sysdba<br />若此时数据库服务器已启动，则先执行 SHUTDOWN IMMEDIATE 命令关闭数据库服务器，<br />然后执行以下命令:<br />SQL&gt;shutdown immediate<br />SQL&gt;STARTUP MOUNT<br />SQL&gt;ALTER SYSTEM ENABLE RESTRICTED SESSION<br />SQL&gt;ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0<br />SQL&gt;ALTER SYSTEM SET AQ_TM_PROCESSES=0<br />SQL&gt;ALTER DATABASE OPEN<br />SQL&gt;ALTER DATABASE CHARACTER SET ZHS16GBK<br />ERROR at line 1:ORA-12721: operation cannot execute when other sessions are active<br />若出现上面的错误，使用下面的办法进行修改，使用INTERNAL_USE可以跳过超集的检查：<br />SQL&gt;ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK<br />SQL&gt;SHUTDOWN IMMEDIATE<br />SQL&gt;STARTUP<br /></p></div><img src ="http://www.blogjava.net/tinguo002/aggbug/392623.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-12-07 21:14 <a href="http://www.blogjava.net/tinguo002/archive/2012/12/07/392623.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORA-06553 PLS-320</title><link>http://www.blogjava.net/tinguo002/archive/2012/11/30/392269.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Fri, 30 Nov 2012 04:07:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/11/30/392269.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/392269.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/11/30/392269.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/392269.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/392269.html</trackback:ping><description><![CDATA[<h2 class="title content-title">ORACLE ORA-06553 PLS-320 错误</h2>
<div id="content" class="content mod-cs-content text-content clearfix" sizset="0" sizcache05036841243529444="0">
<p>前几天遇到了一个存储过程编译无法通过的问题。</p>
<p>数据库是10GR2 的版本</p>
<p sizset="0" sizcache05036841243529444="0">存储过程编译时报 ORA-06553 PLS-320 错误 以下是图 <img src="http://hiphotos.baidu.com/mailking2001/pic/item/1f97dfa95edf8db12882c7de0923dd54544e74d1.jpg" small="0"  alt="" /></p>
<p>检查过程语句无错后还是无法编译通过</p>
<p>存储过程非常简单，接收一个值，然后根据传进来的值对一个表进行删除操作。</p>
<p>检查操作的表，是存在数据库中的，并且表的状态也是有效的。</p>
<p>网上找了下这错误，并发现了一些类似情况的帖子，很多帖子的共同点都是表结构中存在ORACLE 关键字。</p>
<p>于是检查表结构的字段名，发现有一个字段名为NUMBER （这很明显是ORACLE 的关键字）</p>
<p>把这个NUMBER字段名改名,在重新编译过程顺利通过。</p>
<p>于是分析了下原因</p>
<p>有可能这是ORACLE PLSQL的一个BUG ，它在编译的时候需要检查过程中的对象的信息，由于对象中的字段是ORACLE 关键字</p>
<p>所以PLSQL无法区分是NUMBER 数据类型还是字段NUMBER，SQL语句通过给字段两边加&#8220;&#8221; 双引号可以让ORACLE 知道是字段不是关键字</p>
<p>由于没有11G的环境无法测试11G是否解决了这问题<br /><br />--------------------------------------<br />oracle 里修改字段名称<br /><br />alter table "CHECKEXACT" rename column "DATE" to date1;&nbsp;&nbsp; //这个DATE 要大写且加""&nbsp; ，要不然会出错的。。。<br />alter table "CHECKEXACT" rename column "DATE1" to "DATE";</p></div><img src ="http://www.blogjava.net/tinguo002/aggbug/392269.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-11-30 12:07 <a href="http://www.blogjava.net/tinguo002/archive/2012/11/30/392269.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SqlServer 2k转换为Oracle 10g</title><link>http://www.blogjava.net/tinguo002/archive/2012/11/29/392237.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Thu, 29 Nov 2012 15:22:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/11/29/392237.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/392237.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/11/29/392237.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/392237.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/392237.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 转载自：http://blog.csdn.net/heng_2679/article/details/7014778SqlServer 2k转换为Oracle 10g  列名SqlServer数据类型SqlServer长度Oracle数据类型column1bigint8    NUMBER(19)column2binary50    RAW(50)column3bit1    NUMBER(2)c...&nbsp;&nbsp;<a href='http://www.blogjava.net/tinguo002/archive/2012/11/29/392237.html'>阅读全文</a><img src ="http://www.blogjava.net/tinguo002/aggbug/392237.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-11-29 23:22 <a href="http://www.blogjava.net/tinguo002/archive/2012/11/29/392237.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle 获取当前日期及日期格式</title><link>http://www.blogjava.net/tinguo002/archive/2012/11/29/392234.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Thu, 29 Nov 2012 14:42:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/11/29/392234.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/392234.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/11/29/392234.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/392234.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/392234.html</trackback:ping><description><![CDATA[<p>转载自：<a href="http://blog.csdn.net/ReturnMe/article/details/5822002">http://blog.csdn.net/ReturnMe/article/details/5822002</a><br /><br />Oracle 获取当前日期及日期格式</p>
<p><br />获取系统日期： SYSDATE()<br />格式化日期： TO_CHAR(SYSDATE(),'YY/MM/DD HH24:MI:SS)<br />或 TO_DATE(SYSDATE(),'YY/MM/DD HH24:MI:SS)<br />格式化数字： TO_NUMBER</p>
<p><br />注： TO_CHAR 把日期或数字转换为字符串 <br />TO_CHAR(number, '格式') <br />TO_CHAR(salary, '$99,999.99') <br />TO_CHAR(date, '格式') </p>
<p>TO_DATE 把字符串转换为数据库中的日期类型<br />TO_DATE(char, '格式') </p>
<p>TO_NUMBER 将字符串转换为数字 <br />TO_NUMBER(char, '格式') </p>
<p><br />返回系统日期,输出 25-12月-09<br />select sysdate from dual;<br />mi是分钟，输出 2009-12-25 14:23:31<br />select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;<br />mm会显示月份，输出 2009-12-25 14:12:31 <br />select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual;<br />输出 09-12-25 14:23:31<br />select to_char(sysdate,'yy-mm-dd hh24:mi:ss') from dual <br />输出 2009-12-25 14:23:31</p>
<p><br />select to_date('2009-12-25 14:23:31','yyyy-mm-dd,hh24:mi:ss') from dual <br />而如果把上式写作：<br />select to_date('2009-12-25 14:23:31','yyyy-mm-dd,hh:mi:ss') from dual<br />则会报错，因为小时hh是12进制，14为非法输入，不能匹配。</p>
<p>输出 $10,000,00 ：<br />select to_char(1000000,'$99,999,99') from dual;<br />输出 RMB10,000,00 ： <br />select to_char(1000000,'L99,999,99') from dual;<br />输出 1000000.12 ：<br />select trunc(to_number('1000000.123'),2) from dual;<br />select to_number('1000000.123') from dual;</p>
<p>转换的格式：</p>
<p>表示 year 的：y 表示年的最后一位 、<br />yy 表示年的最后2位 、 <br />yyy 表示年的最后3位 、<br />yyyy 用4位数表示年</p>
<p>表示month的： mm 用2位数字表示月 、<br />mon 用简写形式， 比如11月或者nov 、<br />month 用全称， 比如11月或者november</p>
<p>表示day的： dd 表示当月第几天 、<br />ddd 表示当年第几天 、<br />dy 当周第几天，简写， 比如星期五或者fri 、<br />day 当周第几天，全称， 比如星期五或者friday</p>
<p>表示hour的：hh 2位数表示小时 12进制 、 <br />hh24 2位数表示小时 24小时</p>
<p>表示minute的：mi 2位数表示分钟</p>
<p>表示second的：ss 2位数表示秒 60进制</p>
<p>表示季度的：q 一位数 表示季度 （1-4）</p>
<p>另外还有ww 用来表示当年第几周 w用来表示当月第几周。</p>
<p>24小时制下的时间范围：00：00：00-23：59：59<br />12小时制下的时间范围：1：00：00-12：59：59</p>
<p>数字格式: 9 代表一个数字 <br />0 强制显示0 <br />$ 放置一个$符 <br />L 放置一个浮动本地货币符 <br />. 显示小数点 <br />, 显示千位指示符 </p>
<p>补充：<br />当前时间减去7分钟的时间 <br />select sysdate,sysdate - interval '7' MINUTE from dual; <br />当前时间减去7小时的时间 <br />select sysdate - interval '7' hour from dual; <br />当前时间减去7天的时间 <br />select sysdate - interval '7' day from dual; <br />当前时间减去7月的时间 <br />select sysdate,sysdate - interval '7' month from dual; <br />当前时间减去7年的时间 <br />select sysdate,sysdate - interval '7' year from dual; <br />时间间隔乘以一个数字 <br />select sysdate,sysdate - 8*interval '7' hour from dual;</p>
<p>含义解释： <br />Dual伪列<br />Dual 是 Oracle中的一个实际存在的表，任何用户均可读取，常用在没有目标表的select语句块中。<br />不同系统可能返回日期的格式不一样。<br />返回当前连接的用户：select user from dual;</p><img src ="http://www.blogjava.net/tinguo002/aggbug/392234.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-11-29 22:42 <a href="http://www.blogjava.net/tinguo002/archive/2012/11/29/392234.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQLServer和Oracle的常用函数对比</title><link>http://www.blogjava.net/tinguo002/archive/2012/11/29/392229.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Thu, 29 Nov 2012 13:35:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/11/29/392229.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/392229.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/11/29/392229.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/392229.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/392229.html</trackback:ping><description><![CDATA[<div><div class="content-head clearfix"><br /><div class="content-other-info"><span>2008-05-27 10:32</span> </div>转载自：<a href="http://hi.baidu.com/zhoudz_jxdy/item/5e6dd8d0700ac5be33db901e">http://hi.baidu.com/zhoudz_jxdy/item/5e6dd8d0700ac5be33db901e</a><br /><h2 class="title content-title">SQLServer和Oracle的常用函数对比</h2></div><br /><div id="content" class="content mod-cs-content text-content clearfix">SQLServer和Oracle的常用函数对比
<p>帮别人写SQL Server的程序很多函数我不知道Oracle对应的怎么转换到SQL Server上，网上查到一下资料堪称雪中送炭。管用SQL <br />Server 我能作的实在太少。唉，真不知道为什么这么不开眼让我写SQL Server的存储过程。</p><br /><p>---------数学函数</p><br /><p>　　1.绝对值 <br />　　S:select abs(-1) value<br />　　O:select abs(-1) value from <br />dual</p><br /><p>　　2.取整(大) <br />　　S:select ceiling(-1.001) value <br />　　O:select ceil(-1.001) <br />value from dual</p><br /><p>　　3.取整（小） <br />　　S:select floor(-1.001) value <br />　　O:select floor(-1.001) <br />value from dual</p><br /><p>　　4.取整（截取）<br />　　S:select cast(-1.002 as int) value <br />　　O:select <br />trunc(-1.002) value from dual </p><br /><p>　　5.四舍五入<br />　　S:select round(1.23456,4) value 1.23460<br />　　O:select <br />round(1.23456,4) value from dual 1.2346</p><br /><p>　　6.e为底的幂 <br />　　S:select Exp(1) value 2.7182818284590451 <br />　　O:select <br />Exp(1) value from dual 2.71828182</p><br /><p>　　7.取e为底的对数<br />　　S:select log(2.7182818284590451) value 1<br />　　O:select <br />ln(2.7182818284590451) value from dual; 1</p><br /><p>　　8.取10为底对数<br />　　S:select log10(10) value 1<br />　　O:select log(10,10) value <br />from dual; 1</p><br /><p>　　9.取平方<br />　　S:select SQUARE(4) value 16<br />　　O:select power(4,2) value from <br />dual 16</p><br /><p>　　10.取平方根<br />　　S:select SQRT(4) value 2<br />　　O:select SQRT(4) value from dual <br />2</p><br /><p>　　11.求任意数为底的幂<br />　　S:select power(3,4) value 81<br />　　O:select power(3,4) <br />value from dual 81</p><br /><p>　　12.取随机数<br />　　S:select rand() value <br />　　O:select <br />sys.dbms_random.value(0,1) value from dual;</p><br /><p>　　13.取符号<br />　　S:select sign(-8) value -1<br />　　O:select sign(-8) value from <br />dual -1<br />　　----------数学函数</p><br /><p>　　14.圆周率<br />　　S:SELECT PI() value 3.1415926535897931<br />　　O:不知道</p><br /><p>　　15.sin,cos,tan 参数都以弧度为单位<br />　　例如：select sin(PI()/2) value <br />得到1（SQLServer）</p><br /><p>　　16.Asin,Acos,Atan,Atan2 返回弧度</p><br /><p>　　17.弧度角度互换(SQLServer，Oracle不知道)<br />　　DEGREES：弧度-〉角度<br />　　RADIANS：角度-〉弧度</p><br /><p>　　---------数值间比较</p><br /><p>　　18. 求集合最大值<br />　　S:select max(value) value from <br />　　(select 1 <br />value<br />　　union<br />　　select -2 value<br />　　union<br />　　select 4 <br />value<br />　　union<br />　　select 3 value)a</p><br /><p>　　O:select greatest(1,-2,4,3) value from dual</p><br /><p>　　19. 求集合最小值<br />　　S:select min(value) value from <br />　　(select 1 <br />value<br />　　union<br />　　select -2 value<br />　　union<br />　　select 4 <br />value<br />　　union<br />　　select 3 value)a</p><br /><p>　　O:select least(1,-2,4,3) value from dual</p><br /><p>　　20.如何处理null值(F2中的null以10代替)<br />　　S:select F1,IsNull(F2,10) value from <br />Tbl<br />　　O:select F1,nvl(F2,10) value from Tbl</p><br /><p>　　--------数值间比较</p><br /><p>　　21.求字符序号<br />　　S:select ascii('a') value<br />　　O:select ascii('a') value from <br />dual</p><br /><p>　　22.从序号求字符<br />　　S:select char(97) value<br />　　O:select chr(97) value from <br />dual</p><br /><p>　　23.连接<br />　　S:select '11'+'22'+'33' value<br />　　O:select <br />CONCAT('11','22')||33 value from dual</p><br /><p>　　23.子串位置 --返回3<br />　　S:select CHARINDEX('s','sdsq',2) value <br />　　O:select <br />INSTR('sdsq','s',2) value from dual</p><br /><p>　　23.模糊子串的位置 --返回2,参数去掉中间%则返回7<br />　　S:select patindex('%d%q%','sdsfasdqe') <br />value <br />　　O:oracle没发现，但是instr可以通过第四霾问 刂瞥鱿执问?BR&gt;　　select <br />INSTR('sdsfasdqe','sd',1,2) value from dual 返回6</p><br /><p>　　24.求子串<br />　　S:select substring('abcd',2,2) value <br />　　O:select <br />substr('abcd',2,2) value from dual</p><br /><p>　　25.子串代替 返回aijklmnef<br />　　S:SELECT STUFF('abcdef', 2, 3, 'ijklmn') <br />value<br />　　O:SELECT Replace('abcdef', 'bcd', 'ijklmn') value from dual</p><br /><p>　　26.子串全部替换<br />　　S:没发现<br />　　O:select Translate('fasdbfasegas','fa','我' ) <br />value from dual</p><br /><p>　　27.长度<br />　　S:len,datalength<br />　　O:length</p><br /><p>　　28.大小写转换 lower,upper</p><br /><p>　　29.单词首字母大写<br />　　S:没发现<br />　　O:select INITCAP('abcd dsaf df') value from <br />dual</p><br /><p>　　30.左补空格（LPAD的第一个参数为空格则同space函数）<br />　　S:select space(10)+'abcd' <br />value<br />　　O:select LPAD('abcd',14) value from dual</p><br /><p>　　31.右补空格（RPAD的第一个参数为空格则同space函数）<br />　　S:select 'abcd'+space(10) <br />value<br />　　O:select RPAD('abcd',14) value from dual</p><br /><p>　　32.删除空格<br />　　S:ltrim,rtrim<br />　　O:ltrim,rtrim,trim</p><br /><p>　　33. 重复字符串<br />　　S:select REPLICATE('abcd',2) value <br />　　O:没发现</p><br /><p>　　34.发音相似性比较(这两个单词返回值一样，发音相同)<br />　　S:SELECT SOUNDEX ('Smith'), SOUNDEX <br />('Smythe')<br />　　O:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe') from <br />dual<br />　　SQLServer中用SELECT DIFFERENCE('Smithers', 'Smythers') <br />比较soundex的差<br />　　返回0-4，4为同音，1最高</p><br /><p>　　--------------日期函数</p><br /><p>　　35.系统时间<br />　　S:select getdate() value<br />　　O:select sysdate value from <br />dual</p><br /><p>　　36.前后几日<br />　　直接与整数相加减</p><br /><p>　　37.求日期<br />　　S:select convert(char(10),getdate(),20) value<br />　　O:select <br />trunc(sysdate) value from dual<br />　　select to_char(sysdate,'yyyy-mm-dd') value <br />from dual</p><br /><p>　　38.求时间<br />　　S:select convert(char(8),getdate(),108) value<br />　　O:select <br />to_char(sysdate,'hh24:mm:ss') value from dual</p><br /><p>　　39.取日期时间的其他部分<br />　　S:DATEPART 和 DATENAME 函数 （第一个参数决定） <br />　　O:to_char函数 <br />第二个参数决定</p><br /><p>　　参数---------------------------------下表需要补充<br />　　year yy, yyyy <br />　　quarter <br />qq, q (季度)<br />　　month mm, m (m O无效)<br />　　dayofyear dy, y (O表星期)<br />　　day dd, d <br />(d O无效)<br />　　week wk, ww (wk O无效)<br />　　weekday dw (O不清楚)<br />　　Hour hh,hh12,hh24 <br />(hh12,hh24 S无效)<br />　　minute mi, n (n O无效)<br />　　second ss, s (s <br />O无效)<br />　　millisecond ms <br />(O无效)<br />　　----------------------------------------------</p><br /><p>　　40.当月最后一天<br />　　S:day(convert(datetime,'20080501')-1)</p><br /><p>　　O:select LAST_DAY(sysdate) value from dual</p><br /><p>　　41.本星期的某一天（比如星期日）<br />　　S:不知道<br />　　O:SELECT Next_day(sysdate,7) vaule FROM <br />DUAL;</p><br /><p>　　42.字符串转时间<br />　　S:可以直接转或者select cast('2004-09-08'as datetime) <br />value<br />　　O:SELECT To_date('2004-01-05 22:09:38','yyyy-mm-dd hh24-mi-ss') vaule <br />FROM DUAL;</p><br /><p>　　43.求两日期某一部分的差（比如秒）<br />　　S:select datediff(ss,getdate(),getdate()+12.3) <br />value<br />　　O:直接用两个日期相减（比如d1-d2=12.3）<br />　　SELECT (d1-d2)*24*60*60 vaule FROM <br />DUAL;</p><br /><p>　　44.根据差值求新的日期（比如分钟）<br />　　S:select dateadd(mi,8,getdate()) <br />value<br />　　O:SELECT sysdate+8/60/24 vaule FROM DUAL;</p><br /><p>　　45.求不同时区时间<br />　　S:不知道<br />　　O:SELECT New_time(sysdate,'ydt','gmt' ) vaule <br />FROM DUAL;</p><br /><p>　　-----时区参数,北京在东8区应该是Ydt-------<br />　　AST ADT 大西洋标准时间<br />　　BST BDT <br />白令海标准时间<br />　　CST CDT 中部标准时间<br />　　EST EDT 东部标准时间<br />　　GMT 格林尼治标准时间<br />　　HST HDT <br />阿拉斯加&#8212;夏威夷标准时间<br />　　MST MDT 山区标准时间<br />　　NST 纽芬兰标准时间<br />　　PST PDT 太平洋标准时间<br />　　YST <br />YDT YUKON标准时间</p><br /><p>&nbsp;</p><br /><p><strong>oracle对日期时间进行加减</strong></p><br /><p>加法 <br />select sysdate,add_months(sysdate,12) from dual;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />--加1年<br />select sysdate,add_months(sysdate,1) from dual;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; --加1月<br />select <br />sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS') from dual;&nbsp;&nbsp;&nbsp; <br />--加1星期<br />select sysdate,to_char(sysdate+1,'yyyy-mm-dd HH24:MI:SS') from <br />dual;&nbsp;&nbsp;&nbsp; --加1天<br />select sysdate,to_char(sysdate+1/24,'yyyy-mm-dd HH24:MI:SS') <br />from dual;&nbsp;&nbsp; --加1小时<br />select sysdate,to_char(sysdate+1/24/60,'yyyy-mm-dd <br />HH24:MI:SS') from dual;&nbsp;&nbsp; --加1分钟<br />select <br />sysdate,to_char(sysdate+1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual; <br />--加1秒<br /><br />减法<br />select sysdate,add_months(sysdate,-12) from dual;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />--减1年<br />select sysdate,add_months(sysdate,-1) from dual;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />--减1月<br />select sysdate,to_char(sysdate-7,'yyyy-mm-dd HH24:MI:SS') from dual;&nbsp;&nbsp;&nbsp; <br />--减1星期<br />select sysdate,to_char(sysdate-1,'yyyy-mm-dd HH24:MI:SS') from <br />dual;&nbsp;&nbsp;&nbsp; --减1天<br />select sysdate,to_char(sysdate-1/24,'yyyy-mm-dd HH24:MI:SS') <br />from dual;&nbsp;&nbsp; --减1小时<br />select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-dd <br />HH24:MI:SS') from dual;&nbsp;&nbsp; --减1分钟<br />select <br />sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual; --减1秒</p></div></div><img src ="http://www.blogjava.net/tinguo002/aggbug/392229.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-11-29 21:35 <a href="http://www.blogjava.net/tinguo002/archive/2012/11/29/392229.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle：启动 Database Control 时出错</title><link>http://www.blogjava.net/tinguo002/archive/2012/11/09/391086.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Fri, 09 Nov 2012 03:57:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/11/09/391086.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/391086.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/11/09/391086.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/391086.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/391086.html</trackback:ping><description><![CDATA[<p align="left"><span style="line-height: normal; font-family: 'lucida grande'; white-space: pre; font-size: 18pt">转载自：<a href="http://www.cnblogs.com/spatial/archive/0001/01/01/1529366.html">http://www.cnblogs.com/spatial/archive/0001/01/01/1529366.html</a><br /><br />Oracle：启动 Database Control 时出错</span></p>
<p align="left"><span style="font-family: 宋体">问题描述：</span><span style="font-family: 'Cambria','serif'"></span></p>
<p align="left"><span style="font-family: 'Cambria','serif'"></span><span style="font-family: 宋体">原来一直用</span><span style="font-family: 'Cambria','serif'">oracle10g</span><span style="font-family: 宋体">学习的，</span><span style="font-family: 'Cambria','serif'">EM</span><span style="font-family: 宋体">安装没出问题，一直比较正常，后来卸了</span><span style="font-family: 'Cambria','serif'">10g</span><span style="font-family: 宋体">，装上了</span><span style="font-family: 'Cambria','serif'">oracle</span><span style="font-family: 宋体">最新发布的</span><span style="font-family: 'Cambria','serif'">11g</span><span style="font-family: 宋体">，安装过程中，数据库的安装不存在问题，在最后启动</span><span style="font-family: 'Cambria','serif'">database control</span><span style="font-family: 宋体">时，出现无法启动，当时没太在意，就先跳过去了，因为这个不影响数据库自身的运转的，后来又经过一段时间，需要收集数据库的运行状态信息，不得已就得需要配置安装</span><span style="font-family: 'Cambria','serif'">EM</span><span style="font-family: 宋体">，通过</span><span style="font-family: 'Cambria','serif'">emca</span><span style="font-family: 宋体">语句来配置创建</span><span style="font-family: 'Cambria','serif'">EM</span><span style="font-family: 宋体">，无料在安装过程中，同样出现此问题，于是查看安装日志</span><span style="font-family: 'Cambria','serif'">log</span><span style="font-family: 宋体">，追踪到下面错误的语句：</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">oracle.sysman.emcp.exception.EMConfigException:</span><span style="font-family: 宋体">启动</span><span style="font-family: 'Cambria','serif'"> Database Control </span><span style="font-family: 宋体">时出错</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMDBPostConfig.performConfiguration(EMDBPostConfig.java:869)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMDBPostConfig.invoke(EMDBPostConfig.java:250)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMDBPostConfig.invoke(EMDBPostConfig.java:213)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:235)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMConfigAssistant.invokeEMCA(EMConfigAssistant.java:535)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMConfigAssistant.performConfiguration(EMConfigAssistant.java:1215)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMConfigAssistant.statusMain(EMConfigAssistant.java:519)</span></p>
<p align="left"><span style="font-family: 'Cambria','serif'">at oracle.sysman.emcp.EMConfigAssistant.main(EMConfigAssistant.java:468)</span></p>
<p align="left"><span style="font-family: 宋体">可以确定</span><span style="font-family: 'Cambria','serif'">EM</span><span style="font-family: 宋体">资料档案库数据的上载配置都没有错误，就是这个服务无法启动，以至于后面的配置无法完成。</span></p>
<p align="left"><span style="font-family: 宋体">一看是基于</span><span style="font-family: 'Cambria','serif'">java</span><span style="font-family: 宋体">语言开发的配置程序在安装配置过程中抛出的异常，首先怀疑可能是</span><span style="font-family: 'Cambria','serif'">java</span><span style="font-family: 宋体">虚拟机与</span><span style="font-family: 'Cambria','serif'">jdk</span><span style="font-family: 宋体">版本的问题，这个问题在以前也遇到过，版本不一致很可能导致程序抛出一定错误，于是打开任务管理器追踪</span><span style="font-family: 'Cambria','serif'">java.exe</span><span style="font-family: 宋体">版本，追踪方法可以用下面</span><span style="font-family: 'Cambria','serif'">cmd</span><span style="font-family: 宋体">方法查询：</span></p>
<p align="left"><span style="font-family: Cambria"><img border="0" alt="" src="http://images.cnblogs.com/cnblogs_com/spatial/1.JPG" width="557" height="248" /></span></p>
<p align="left"><br /></p>
<p align="left"><span style="font-family: 宋体">发现</span><span style="font-family: 'Cambria','serif'">java.exe</span><span style="font-family: 宋体">是</span><span style="font-family: 'Cambria','serif'">oracle</span><span style="font-family: 宋体">自身版本带的</span><span style="font-family: 'Cambria','serif'">jdk</span><span style="font-family: 宋体">，跑到其源文件夹一查询，是</span><span style="font-family: 'Cambria','serif'">1.5</span><span style="font-family: 宋体">的，而我的</span><span style="font-family: 'Cambria','serif'">java</span><span style="font-family: 宋体">虚拟机是</span><span style="font-family: 'Cambria','serif'">1.6</span><span style="font-family: 宋体">，很可能是这方面的原因，于是又再</span><span style="font-family: 'Cambria','serif'">sun</span><span style="font-family: 宋体">主页上下载了最新的</span><span style="font-family: 'Cambria','serif'">1.6</span><span style="font-family: 宋体">的</span><span style="font-family: 'Cambria','serif'">jdk</span><span style="font-family: 宋体">，全部代替了</span><span style="font-family: 'Cambria','serif'">oracle</span><span style="font-family: 宋体">版本自身的</span><span style="font-family: 'Cambria','serif'">1.5</span><span style="font-family: 宋体">版的，本想这应该行了吧，可是通过</span><span style="font-family: 'Cambria','serif'">ecma</span><span style="font-family: 宋体">语句重新创建</span><span style="font-family: 'Cambria','serif'">EM</span><span style="font-family: 宋体">，还是无法启动</span><span style="font-family: 'Cambria','serif'">database control</span><span style="font-family: 宋体">服务，于是真的怪哉乎了，问题依然存在，那么排除</span><span style="font-family: 'Cambria','serif'">java</span><span style="font-family: 宋体">版本的问题，还有什么问题呢？于是再看抛出的语句，</span><span style="font-family: 'Cambria','serif'">EMDBPostConfig</span><span style="font-family: 宋体">抛出的错误，肯定是在配置过程中出的问题，可是问题在哪里呢？思来思去，估计恐怕只有网络连接的问题了，于是打开网络连接，一看傻了眼了，居然有两套网络连接着，去</span><span style="font-family: 'Cambria','serif'">cmd</span><span style="font-family: 宋体">下面用</span><span style="font-family: 'Cambria','serif'">ipconfig</span><span style="font-family: 宋体">一看，居然有两套不同的</span><span style="font-family: 'Cambria','serif'">ip</span><span style="font-family: 宋体">地址在同时运行，于是问题可能出现在这里，仅仅是直觉，但是为什么还是说不上来，那就先禁止一个再试试，于是禁止掉一个，再通过</span><span style="font-family: 'Cambria','serif'">emca</span><span style="font-family: 宋体">试试，通过一系列安装配置，在最后启动</span><span style="font-family: 'Cambria','serif'">database control</span><span style="font-family: 宋体">时，的确捏了一把汗，如果再起不来，就真的没有办法了啊！幸运的是，终于在最后关头，顺利的启动了</span><span style="font-family: 'Cambria','serif'">database control</span><span style="font-family: 宋体">，完成了最后的配置，终于成功的配置了</span><span style="font-family: 'Cambria','serif'">11g</span><span style="font-family: 宋体">下面的</span><span style="font-family: 'Cambria','serif'">EM</span><span style="font-family: 宋体">平台，但是回头总结一下，问题根源还是没闹明白，<strong>到底与</strong></span><strong><span style="font-family: 'Cambria','serif'">java</span></strong><strong><span style="font-family: 宋体">版本的冲突有关系吗？&#8220;网络连接&#8221;两套</span></strong><strong><span style="font-family: 'Cambria','serif'">ip</span></strong><strong><span style="font-family: 宋体">地址问题为什么会对</span></strong><strong><span style="font-family: 'Cambria','serif'">EM</span></strong><strong><span style="font-family: 宋体">的创建造成阻碍？暂时回答不了，以后有机会追查清楚了再来补充吧！</span></strong><strong></strong></p>
<p align="left"><strong></strong></p>
<p align="left"><strong><span style="font-family: 宋体">问题解决方法总结：</span></strong><strong></strong></p>
<p style="text-align: left; text-indent: -18pt; margin-left: 39pt" align="left"><span style="font-family: 'Cambria','serif'">1， </span><span style="font-family: 宋体">先去检查一下</span><span style="font-family: 'Cambria','serif'">java</span><span style="font-family: 宋体">虚拟机安装情况和版本情况，如果存在冲突，那么首先解决版本的问题吧！一种简单的方法，就是下载一个与</span><span style="font-family: 'Cambria','serif'">jvm</span><span style="font-family: 宋体">配套的</span><span style="font-family: 'Cambria','serif'">jdk</span><span style="font-family: 宋体">直接替换掉</span><span style="font-family: 'Cambria','serif'">oracle</span><span style="font-family: 宋体">自带的版本吧，相信大家这点都可以做到的。</span></p>
<p style="text-align: left; text-indent: -18pt; margin-left: 39pt" align="left"><span style="font-family: 'Cambria','serif'">2， </span><span style="font-family: 宋体">检查你的网络连接情况，如果有多个网络连接，也可能存在问题，那就暂时禁止掉吧，留一个再去试试吧！有的网友反应有时候也要断网才行，本人觉得断网与否应该没太大关系，如果实在不行，也可以断掉网试试吧！ </span></p>
<p><strong><span style="font-family: 宋体">下面是</span></strong><strong><span style="font-family: 'Cambria','serif'">emca</span></strong><strong><span style="font-family: 宋体">创建</span></strong><strong><span style="font-family: 'Cambria','serif'">em</span></strong><strong><span style="font-family: 宋体">的过程，大致演示一下：</span></strong><strong></strong></p>
<p style="text-align: left; text-indent: -18pt; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">1， </span><span style="font-family: 宋体">删除建立失败的</span><span style="font-family: 'Cambria','serif'">em</span><span style="font-family: 宋体">档案库：</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">C:\Documents and Settings\Administrator&gt;<span style="color: red">emca -deconfig dbcontrol db-repos drop </span></span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">EMCA </span><span style="font-family: 宋体">开始于</span><span style="font-family: 'Cambria','serif'"> 2009-7-23 11:19:18</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">EM Configuration Assistant, 11.1.0.5.0 </span><span style="font-family: 宋体">正式版</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">版权所有</span><span style="font-family: 'Cambria','serif'"> (c) 2003, 2005, Oracle</span><span style="font-family: 宋体">。保留所有权利。 </span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">输入以下信息</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">数据库</span><span style="font-family: 'Cambria','serif'"> SID: <span style="color: red">verafzy</span></span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">监听程序端口号</span><span style="font-family: 'Cambria','serif'">: <span style="color: red">1521</span></span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">SYS </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">SYSMAN </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">SYSMAN </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">是否继续</span><span style="font-family: 'Cambria','serif'">? [</span><span style="font-family: 宋体">是</span><span style="font-family: 'Cambria','serif'">(Y)/</span><span style="font-family: 宋体">否</span><span style="font-family: 'Cambria','serif'">(N)]: y</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:19:40 oracle.sysman.emcp.EMConfig perform</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在将此操作记录到</span><span style="font-family: 'Cambria','serif'">E:\app\Administrator\cfgtoollogs\emca\verafzy\emca_2009</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">_07_23_11_19_17.log</span><span style="font-family: 宋体">。</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:19:42 oracle.sysman.emcp.util.DBControlUtil stopOMS</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在停止</span><span style="font-family: 'Cambria','serif'"> Database Control (</span><span style="font-family: 宋体">此操作可能需要一段时间</span><span style="font-family: 'Cambria','serif'">)...</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:20:23 oracle.sysman.emcp.EMReposConfig invoke</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在删除</span><span style="font-family: 'Cambria','serif'"> EM </span><span style="font-family: 宋体">资料档案库</span><span style="font-family: 'Cambria','serif'"> (</span><span style="font-family: 宋体">此操作可能需要一段时间</span><span style="font-family: 'Cambria','serif'">)...</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:24:42 oracle.sysman.emcp.EMReposConfig invoke</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">已成功删除资料档案库</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 宋体">已成功完成</span><span style="font-family: 'Cambria','serif'"> Enterprise Manager </span><span style="font-family: 宋体">的配置</span></p>
<p style="text-align: left; margin-left: 57pt" align="left"><span style="font-family: 'Cambria','serif'">EMCA </span><span style="font-family: 宋体">结束于</span><span style="font-family: 'Cambria','serif'"> 2009-7-23 11:24:56</span></p>
<p style="text-align: left; text-indent: -18pt; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">2， </span><span style="font-family: 宋体">重新创建</span><span style="font-family: 'Cambria','serif'">em</span><span style="font-family: 宋体">档案库：</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">C:\Documents and Settings\Administrator&gt;<span style="color: red">emca -config dbcontrol db-repos create </span></span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">EMCA </span><span style="font-family: 宋体">开始于</span><span style="font-family: 'Cambria','serif'"> 2009-7-23 11:26:55</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">EM Configuration Assistant, 11.1.0.5.0 </span><span style="font-family: 宋体">正式版</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">版权所有</span><span style="font-family: 'Cambria','serif'"> (c) 2003, 2005, Oracle</span><span style="font-family: 宋体">。保留所有权利。 </span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">输入以下信息</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">数据库</span><span style="font-family: 'Cambria','serif'"> SID: <span style="color: red">verafzy</span></span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">监听程序端口号</span><span style="font-family: 'Cambria','serif'">: <span style="color: red">1521</span></span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">SYS </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">DBSNMP </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">SYSMAN </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">SYSMAN </span><span style="font-family: 宋体">用户的口令</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">通知的电子邮件地址</span><span style="font-family: 'Cambria','serif'"> (</span><span style="font-family: 宋体">可选</span><span style="font-family: 'Cambria','serif'">):</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">通知的发件</span><span style="font-family: 'Cambria','serif'"> (SMTP) </span><span style="font-family: 宋体">服务器</span><span style="font-family: 'Cambria','serif'"> (</span><span style="font-family: 宋体">可选</span><span style="font-family: 'Cambria','serif'">):</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">----------------------------------------------------------------- </span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">已指定以下设置 </span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">数据库</span><span style="font-family: 'Cambria','serif'"> ORACLE_HOME ................ E:\app\Administrator\product\11.1.0\db_1 </span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">本地主机名</span><span style="font-family: 'Cambria','serif'"> ................ PC-200901030636</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">监听程序端口号</span><span style="font-family: 'Cambria','serif'"> ................ 1521</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">数据库</span><span style="font-family: 'Cambria','serif'"> SID ................ verafzy</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">通知的电子邮件地址</span><span style="font-family: 'Cambria','serif'"> ...............</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">通知的发件</span><span style="font-family: 'Cambria','serif'">(SMTP) </span><span style="font-family: 宋体">服务器</span><span style="font-family: 'Cambria','serif'"> ...............</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">是否继续</span><span style="font-family: 'Cambria','serif'">? [</span><span style="font-family: 宋体">是</span><span style="font-family: 'Cambria','serif'">(Y)/</span><span style="font-family: 宋体">否</span><span style="font-family: 'Cambria','serif'">(N)]: <span style="color: red">y</span></span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:27:13 oracle.sysman.emcp.EMConfig perform</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在将此操作记录到</span><span style="font-family: 'Cambria','serif'">E:\app\Administrator\cfgtoollogs\emca\verafzy\emca_2009</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">07_23_11_26_55.log</span><span style="font-family: 宋体">。</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:27:15 oracle.sysman.emcp.EMReposConfig createRepository</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在创建</span><span style="font-family: 'Cambria','serif'"> EM </span><span style="font-family: 宋体">资料档案库</span><span style="font-family: 'Cambria','serif'"> (</span><span style="font-family: 宋体">此操作可能需要一段时间</span><span style="font-family: 'Cambria','serif'">)...</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:39:46 oracle.sysman.emcp.EMReposConfig invoke</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">已成功创建资料档案库</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:39:59 oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository </span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在将配置数据上载到</span><span style="font-family: 'Cambria','serif'"> EM</span><span style="font-family: 宋体">资料档案库</span><span style="font-family: 'Cambria','serif'"> (</span><span style="font-family: 宋体">此操作可能需要一段时间</span><span style="font-family: 'Cambria','serif'">)...</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:41:42 oracle.sysman.emcp.EMReposConfig invoke</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">已成功上载配置数据</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:41:47 oracle.sysman.emcp.util.DBControlUtil configureSoftwareLib</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">软件库已配置成功。</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:41:47 oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在部署预配档案</span><span style="font-family: 'Cambria','serif'">...</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:42:02 oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">预配档案部署成功。</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">009-7-23 11:42:03 oracle.sysman.emcp.util.DBControlUtil secureDBConsole</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在保护</span><span style="font-family: 'Cambria','serif'"> Database Control (</span><span style="font-family: 宋体">此操作可能需要一段时间</span><span style="font-family: 'Cambria','serif'">)...</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:42:19 oracle.sysman.emcp.util.DBControlUtil secureDBConsole</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">已成功保护</span><span style="font-family: 'Cambria','serif'">Database Control</span><span style="font-family: 宋体">。</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:42:19 oracle.sysman.emcp.util.DBControlUtil startOMS</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">正在启动</span><span style="font-family: 'Cambria','serif'"> Database Control (</span><span style="font-family: 宋体">此操作可能需要一段时间</span><span style="font-family: 'Cambria','serif'">)...</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:46:29 oracle.sysman.emcp.EMDBPostConfig performConfiguration</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: </span><span style="font-family: 宋体">已成功启动</span><span style="font-family: 'Cambria','serif'">Database Control</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:46:34 oracle.sysman.emcp.EMDBPostConfig performConfiguration</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">信息</span><span style="font-family: 'Cambria','serif'">: &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Database Control URL </span><span style="font-family: 宋体">为</span><span style="font-family: 'Cambria','serif'"> https://PC-200901030636:1158/em &lt;&lt;&lt;&lt;&lt;&lt;</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">&lt;&lt;&lt;&lt;&lt; </span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">2009-7-23 11:47:10 oracle.sysman.emcp.EMDBPostConfig invoke</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">警告</span><span style="font-family: 'Cambria','serif'">:</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">************************ WARNING ************************</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">管理资料档案库已置于安全模式下</span><span style="font-family: 'Cambria','serif'">, </span><span style="font-family: 宋体">在此模式下将对</span><span style="font-family: 'Cambria','serif'">Enterprise Manager </span><span style="font-family: 宋体">数据进行加密。</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">加密密钥已放置在文件</span><span style="font-family: 'Cambria','serif'"> E:\app\Administrator\product\11.1.0\db_1\PC-200901030636_ve</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">rafzy\sysman\config\emkey.ora </span><span style="font-family: 宋体">中。请务必备份此文件</span><span style="font-family: 'Cambria','serif'">, </span><span style="font-family: 宋体">因为如果此文件丢失</span><span style="font-family: 'Cambria','serif'">, </span><span style="font-family: 宋体">则加密数</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">据将不可用。</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">***********************************************************</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">已成功完成</span><span style="font-family: 'Cambria','serif'"> Enterprise Manager </span><span style="font-family: 宋体">的配置</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">EMCA </span><span style="font-family: 宋体">结束于</span><span style="font-family: 'Cambria','serif'"> 2009-7-23 11:47:13</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"></p>
<p style="text-align: left; margin-left: 18pt" align="left"></p>
<p style="text-align: left; margin-left: 18pt" align="left"></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 'Cambria','serif'">Ok</span><span style="font-family: 宋体">！建立成功，就可以去浏览器下面去登陆</span><span style="font-family: 'Cambria','serif'">em</span><span style="font-family: 宋体">管理平台了！</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">偶以此地址在</span><span style="font-family: 'Cambria','serif'">IE8</span><span style="font-family: 宋体">登陆：</span><span style="font-family: 'Cambria','serif'"><a href="https://localhost:1158/em/console/logon/logon">https://localhost:1158/em/console/logon/logon</a></span><span style="font-family: 宋体">视图如下，</span><span style="font-family: 'Cambria','serif'">em</span><span style="font-family: 宋体">正式建立成功，可能安全方面存在验证的问题，只要导入证书，重新启动下就</span><span style="font-family: 'Cambria','serif'">ok</span><span style="font-family: 宋体">了！</span></p>
<p style="text-align: left; margin-left: 18pt" align="left"><img border="0" alt="" src="http://images.cnblogs.com/cnblogs_com/spatial/2.JPG" width="558" height="328" /><br /></p>
<p style="text-align: left; margin-left: 18pt" align="left"><span style="font-family: 宋体">最后说明：方法仅供参考，并非完全有效，因为环境不同，可能差异也比较明显，如果哪位高人能够回答上面的问题，就麻烦留个言，我们共同学习探讨吧！</span></p><img src ="http://www.blogjava.net/tinguo002/aggbug/391086.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-11-09 11:57 <a href="http://www.blogjava.net/tinguo002/archive/2012/11/09/391086.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle截取字符串和查找字符串 </title><link>http://www.blogjava.net/tinguo002/archive/2012/07/11/382812.html</link><dc:creator>一堣而安</dc:creator><author>一堣而安</author><pubDate>Wed, 11 Jul 2012 08:32:00 GMT</pubDate><guid>http://www.blogjava.net/tinguo002/archive/2012/07/11/382812.html</guid><wfw:comment>http://www.blogjava.net/tinguo002/comments/382812.html</wfw:comment><comments>http://www.blogjava.net/tinguo002/archive/2012/07/11/382812.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tinguo002/comments/commentRss/382812.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tinguo002/services/trackbacks/382812.html</trackback:ping><description><![CDATA[&nbsp;来源：<br /><a href="http://www.cnblogs.com/gsk99/archive/2011/06/14/2080573.html">http://www.cnblogs.com/gsk99/archive/2011/06/14/2080573.html</a><br /><p align="left">oracle 截取字符(substr)，检索字符位置(instr) case when then else end语句使用 收藏 <br /><br />常用函数：substr和instr<br />1.SUBSTR（string,start_position,[length]）&nbsp;&nbsp;&nbsp; <br />求子字符串，返回字符串<br />解释：string 元字符串<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start_position&nbsp;&nbsp; 开始位置（从0开始）<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />length 可选项，子字符串的个数<br />For example:<br />substr("ABCDEFG", 0); //返回：ABCDEFG，截取所有字符 <br /><br />substr("ABCDEFG", 2); //返回：CDEFG，截取从C开始之后所有字符 <br />substr("ABCDEFG", 0, 3); <br />//返回：ABC，截取从A开始3个字符 <br />substr("ABCDEFG", 0, 100); <br />//返回：ABCDEFG，100虽然超出预处理的字符串最长度，但不会影响返回结果，系统按预处理字符串最大数量返回。 <br />substr("ABCDEFG", <br />0, -3); //返回：EFG，注意参数-3，为负值时表示从尾部开始算起，字符串排列位置不变。</p><br /><p>2.INSTR（string,subString,position,ocurrence）查找字符串位置<br />解释：string：源字符串<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />subString：要查找的子字符串<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; position：查找的开始位置<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />ocurrence：源字符串中第几次出现的子字符串<br />For example:<br />INSTR('CORPORATE FLOOR','OR', 3, <br />2)中，源字符串为'CORPORATE FLOOR', 目标字符串为'OR'，起始位置为3，取第2个匹配项的位置；返回结果为 14 '</p><img src ="http://www.blogjava.net/tinguo002/aggbug/382812.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tinguo002/" target="_blank">一堣而安</a> 2012-07-11 16:32 <a href="http://www.blogjava.net/tinguo002/archive/2012/07/11/382812.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>