﻿<?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-宝宝堂-随笔分类-数据库</title><link>http://www.blogjava.net/soddabao/category/18015.html</link><description>喜欢没事学点东西,喜欢开开心心侃东侃西,喜欢土里土气的活着,喜欢享受好的坏的的生活。</description><language>zh-cn</language><lastBuildDate>Tue, 21 Aug 2007 23:19:36 GMT</lastBuildDate><pubDate>Tue, 21 Aug 2007 23:19:36 GMT</pubDate><ttl>60</ttl><item><title>dblink查询的时候后台出现的tx锁的解决方案</title><link>http://www.blogjava.net/soddabao/archive/2007/08/21/138367.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 21 Aug 2007 06:16:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/08/21/138367.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/138367.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/08/21/138367.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/138367.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/138367.html</trackback:ping><description><![CDATA[<p>创建dblink的方法在我的blog中之前有写过：<br><a href="http://www.blogjava.net/soddabao/archive/2007/03/09/102821.html">http://www.blogjava.net/soddabao/archive/2007/03/09/102821.html</a><br>创建是很简单，但是在使用中后台却出现锁，查看这个锁的方法可以去console中看到或者查询数据库。其实这个锁倒<br>不是最让人心烦的，而是每次使用dblink查询的时候，均会与远程数据库创建一个连接，dblink应该不会自动释放这个连接<br>，如果是大量使用dblink查询，会造成web项目的连接数不够，导致系统无法正常运行。</p>
<p>昨天接到现场电话说，使用dblink出现这个问题，就和同事聊起这个问题，去网上也找了，发现的确存在这个问题。<br>在网上没找到解决方法，上午找部门的数据库管理员询问这个问题。最后发现是使用dblink查询不会释放session中<br>的连接，他给的解决方案是在每次使用dblink查询后释放连接，调用dbms_session包中的关闭函数即可。</p>
<img src ="http://www.blogjava.net/soddabao/aggbug/138367.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-08-21 14:16 <a href="http://www.blogjava.net/soddabao/archive/2007/08/21/138367.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Char 和 Varchar 比较 </title><link>http://www.blogjava.net/soddabao/archive/2007/06/07/122560.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 07 Jun 2007 04:51:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/06/07/122560.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/122560.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/06/07/122560.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/122560.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/122560.html</trackback:ping><description><![CDATA[<div class=xspace-itemmessage id=xspace-showmessage>
<p><span style="COLOR: red"><font face=宋体>具考证：在字符长度一定时</font></span><span lang=EN-US style="COLOR: red"><font face="Times New Roman">CHAR</font></span><span style="COLOR: red; FONT-FAMILY: 宋体">的性能比</span><span lang=EN-US style="COLOR: red"><font face="Times New Roman">VARCHAR</font></span><span style="COLOR: red; FONT-FAMILY: 宋体">好，而在长度不确定时，</span><span lang=EN-US style="COLOR: red"><font face="Times New Roman">CHAR</font></span><span style="COLOR: red; FONT-FAMILY: 宋体">类型的字段在使用时性能略差。这个在sqlServer数据库下面能够体现，并且这个字段是经常使用的。</span></p>
<p><span style="COLOR: red; FONT-FAMILY: 宋体"></span>区别： <br>1．CHAR的长度是固 定的，而VARCHAR2的长度是可以变化的， 比如，存储字符串&#8220;abc"，对于CHAR (20)，表示你存储的字符将占20个字节(包括17个空字符)，而同样的VARCHAR2 (20)则只占用3个字节的长度，20只是最大值，当你存储的字符小于20时，按实际长度存储。由于char是以固定长度的，所以它的速度会比 varchar快得多!但程序处理起来要麻烦一点，要用trim之类的函数把两边的空格去掉!&nbsp; <br>2．CHAR的效率比VARCHAR2的效率稍高。 <br>3．目前VARCHAR是VARCHAR2的同义词。工业标准的VARCHAR类型可以存储空字符串，但是oracle不这样做，尽管它保留以后这样做的权利。Oracle自己开发了一个数据类型VARCHAR2，这个类型不是一个标准的VARCHAR，它将在<a onclick="javascript:tagshow(event, '%CA%FD%BE%DD%BF%E2');" href="javascript:;" target=_self><u><strong><font color=#0000ff>数据库</font></strong></u></a>中varchar列可以存储空字符串的特性改为存储NULL值。如果你想有向后兼容的能力，Oracle建议使用VARCHAR2而不是VARCHAR。&nbsp;<br>&nbsp;<br>何时该用CHAR，何时该用varchar2？ <br>CHAR与VARCHAR2是一对矛盾的统一体，两者是互补的关系. <br>VARCHAR2比CHAR节省空间，在效率上比CHAR会稍微差一些，即要想获得效率，就必须牺牲一定的空间，这也就是我们在数据库设计上常说的&#8216;以空间换效率&#8217;。 <br>VARCHAR2 虽然比CHAR节省空间，但是如果一个VARCHAR2列经常被修改，而且每次被修改的数据的长度不同，这会引起&#8216;行迁移&#8217;(Row Migration)现象，而这造成多余的I/O，是数据库设计和调整中要尽力避免的，在这种情况下用CHAR代替VARCHAR2会更好一些。</p>
</div>
<img src ="http://www.blogjava.net/soddabao/aggbug/122560.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-06-07 12:51 <a href="http://www.blogjava.net/soddabao/archive/2007/06/07/122560.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle的表空间自动增加</title><link>http://www.blogjava.net/soddabao/archive/2007/06/04/121978.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Mon, 04 Jun 2007 12:23:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/06/04/121978.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/121978.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/06/04/121978.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/121978.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/121978.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;今天程序出现一个奇怪现象，数据保存不上，检查发现不是程序的问题，保存的数据也没有问题，最后看weblogic的日志发现是表空间已经全部用完了。没有部分自好增大表空间，然后就可以保存了。<br>&nbsp;&nbsp;&nbsp;&nbsp; oracle 的表空间自动增加，点&#8220;数据文件&#8221;，选中表空间存储的文件，存储设置自动增加即可。
<img src ="http://www.blogjava.net/soddabao/aggbug/121978.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-06-04 20:23 <a href="http://www.blogjava.net/soddabao/archive/2007/06/04/121978.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle内存全面分析</title><link>http://www.blogjava.net/soddabao/archive/2007/05/11/116858.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 11 May 2007 11:58:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/05/11/116858.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/116858.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/05/11/116858.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/116858.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/116858.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 推荐一下《<span lang=EN-US style="COLOR: blue">Oracle内存全面分析</span>》，写的的确很不错，是一个连载文件。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<a href="http://www.hellodba.com/Doc/oracle_memory(1).htm">http://www.hellodba.com/Doc/oracle_memory(1).htm</a> 
<img src ="http://www.blogjava.net/soddabao/aggbug/116858.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-05-11 19:58 <a href="http://www.blogjava.net/soddabao/archive/2007/05/11/116858.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关oralce的12570错误</title><link>http://www.blogjava.net/soddabao/archive/2007/05/10/116453.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 10 May 2007 05:00:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/05/10/116453.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/116453.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/05/10/116453.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/116453.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/116453.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;今天用pl/sql导入数据的时候发现12570错误，之前是好好的。错误的提示如下：<br>&nbsp;Export started on 2007-5-10 上午 11:35:44<br>E:\oracle\ora92\bin\EXP.EXE parfile=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\plsexp.par</p>
<p>EXP-00056: 遇到 ORACLE 错误 12570<br>ORA-12570: TNS: 包阅读程序失败<br>EXP-00000: 导出终止失败</p>
<p>Export finished on 2007-5-10 上午 11:35:44<br><br>后来的服务器给重启后，发现问题消除。<br>不知出现这个问题的原因是什么？<br>那位高手指点一下</p>
<img src ="http://www.blogjava.net/soddabao/aggbug/116453.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-05-10 13:00 <a href="http://www.blogjava.net/soddabao/archive/2007/05/10/116453.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> ORACEL 日期处理 </title><link>http://www.blogjava.net/soddabao/archive/2007/05/09/116157.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 09 May 2007 04:51:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/05/09/116157.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/116157.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/05/09/116157.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/116157.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/116157.html</trackback:ping><description><![CDATA[TO_DATE格式&nbsp;<br>Day:&nbsp;<br>dd&nbsp;number&nbsp;12&nbsp;<br>dy&nbsp;abbreviated&nbsp;fri&nbsp;<br>day&nbsp;spelled&nbsp;out&nbsp;friday&nbsp;<br>ddspth&nbsp;spelled&nbsp;out,&nbsp;ordinal&nbsp;twelfth&nbsp;<br>Month:&nbsp;<br>mm&nbsp;number&nbsp;03&nbsp;<br>mon&nbsp;abbreviated&nbsp;mar&nbsp;<br>month&nbsp;spelled&nbsp;out&nbsp;march&nbsp;<br>Year:&nbsp;<br>yy&nbsp;two&nbsp;digits&nbsp;98&nbsp;<br>yyyy&nbsp;four&nbsp;digits&nbsp;1998&nbsp;<br><br>24小时格式下时间范围为：&nbsp;0:00:00&nbsp;-&nbsp;23:59:59....&nbsp;<br>12小时格式下时间范围为：&nbsp;1:00:00&nbsp;-&nbsp;12:59:59&nbsp;....&nbsp;<br><br><br>1.&nbsp;<br>日期和字符转换函数用法（to_date,to_char）&nbsp;<br><br>2.&nbsp;<br>select&nbsp;to_char(&nbsp;to_date(222,'J'),'Jsp')&nbsp;from&nbsp;dual&nbsp;<br><br>显示Two&nbsp;Hundred&nbsp;Twenty-Two&nbsp;<br><br>3.&nbsp;<br>求某天是星期几&nbsp;<br>select&nbsp;to_char(to_date('2002-08-26','yyyy-mm-dd'),'day')&nbsp;from&nbsp;dual;&nbsp;<br>星期一&nbsp;<br>select&nbsp;to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE&nbsp;=&nbsp;American')&nbsp;from&nbsp;dual;&nbsp;<br>monday&nbsp;<br>设置日期语言&nbsp;<br>Alter&nbsp;SESSION&nbsp;SET&nbsp;NLS_DATE_LANGUAGE='AMERICAN';&nbsp;<br>也可以这样&nbsp;<br>TO_DATE&nbsp;('2002-08-26',&nbsp;'YYYY-mm-dd',&nbsp;'NLS_DATE_LANGUAGE&nbsp;=&nbsp;American')&nbsp;<br><br>4.&nbsp;<br>两个日期间的天数&nbsp;<br>select&nbsp;floor(sysdate&nbsp;-&nbsp;to_date('20020405','yyyymmdd'))&nbsp;from&nbsp;dual;&nbsp;<br><br>5.&nbsp;时间为null的用法&nbsp;<br>select&nbsp;id,&nbsp;active_date&nbsp;from&nbsp;table1&nbsp;<br>UNION&nbsp;<br>select&nbsp;1,&nbsp;TO_DATE(null)&nbsp;from&nbsp;dual;&nbsp;<br><br>注意要用TO_DATE(null)&nbsp;<br><br>6.&nbsp;<br>a_date&nbsp;between&nbsp;to_date('20011201','yyyymmdd')&nbsp;and&nbsp;to_date('20011231','yyyymmdd')&nbsp;<br>那么12月31号中午12点之后和12月1号的12点之前是不包含在这个范围之内的。&nbsp;<br>所以，当时间需要精确的时候，觉得to_char还是必要的&nbsp;<br>7.&nbsp;日期格式冲突问题&nbsp;<br>输入的格式要看你安装的ORACLE字符集的类型,&nbsp;比如:&nbsp;US7ASCII,&nbsp;date格式的类型就是:&nbsp;'01-Jan-01'&nbsp;<br>alter&nbsp;system&nbsp;set&nbsp;NLS_DATE_LANGUAGE&nbsp;=&nbsp;American&nbsp;<br>alter&nbsp;session&nbsp;set&nbsp;NLS_DATE_LANGUAGE&nbsp;=&nbsp;American&nbsp;<br>或者在to_date中写&nbsp;<br>select&nbsp;to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE&nbsp;=&nbsp;American')&nbsp;from&nbsp;dual;&nbsp;<br>注意我这只是举了NLS_DATE_LANGUAGE，当然还有很多，&nbsp;<br>可查看&nbsp;<br>select&nbsp;*&nbsp;from&nbsp;nls_session_parameters&nbsp;<br>select&nbsp;*&nbsp;from&nbsp;V$NLS_PARAMETERS&nbsp;<br><br>8.&nbsp;<br>select&nbsp;count(*)&nbsp;<br>from&nbsp;(&nbsp;select&nbsp;rownum-1&nbsp;rnum&nbsp;<br>from&nbsp;all_objects&nbsp;<br>where&nbsp;rownum&nbsp;&lt;=&nbsp;to_date('2002-02-28','yyyy-mm-dd')&nbsp;-&nbsp;to_date('2002-&nbsp;<br>02-01','yyyy-mm-dd')+1&nbsp;<br>)&nbsp;<br>where&nbsp;to_char(&nbsp;to_date('2002-02-01','yyyy-mm-dd')+rnum-1,&nbsp;'D'&nbsp;)&nbsp;<br>not&nbsp;<br>in&nbsp;(&nbsp;'1',&nbsp;'7'&nbsp;)&nbsp;<br><br>查找2002-02-28至2002-02-01间除星期一和七的天数&nbsp;<br>在前后分别调用DBMS_UTILITY.GET_TIME,&nbsp;让后将结果相减(得到的是1/100秒,&nbsp;而不是毫秒).&nbsp;<br><br>9.&nbsp;<br>select&nbsp;months_between(to_date('01-31-1999','MM-DD-YYYY'),&nbsp;<br>to_date('12-31-1998','MM-DD-YYYY'))&nbsp;"MONTHS"&nbsp;FROM&nbsp;DUAL;&nbsp;<br>1&nbsp;<br><br>select&nbsp;months_between(to_date('02-01-1999','MM-DD-YYYY'),&nbsp;<br>to_date('12-31-1998','MM-DD-YYYY'))&nbsp;"MONTHS"&nbsp;FROM&nbsp;DUAL;&nbsp;<br><br>1.03225806451613&nbsp;<br>10.&nbsp;Next_day的用法&nbsp;<br>Next_day(date,&nbsp;day)&nbsp;<br><br>Monday-Sunday,&nbsp;for&nbsp;format&nbsp;code&nbsp;DAY&nbsp;<br>Mon-Sun,&nbsp;for&nbsp;format&nbsp;code&nbsp;DY&nbsp;<br>1-7,&nbsp;for&nbsp;format&nbsp;code&nbsp;D&nbsp;<br><br>11&nbsp;<br>select&nbsp;to_char(sysdate,'hh:mi:ss')&nbsp;TIME&nbsp;from&nbsp;all_objects&nbsp;<br>注意：第一条记录的TIME&nbsp;与最后一行是一样的&nbsp;<br>可以建立一个函数来处理这个问题&nbsp;<br>create&nbsp;or&nbsp;replace&nbsp;function&nbsp;sys_date&nbsp;return&nbsp;date&nbsp;is&nbsp;<br>begin&nbsp;<br>return&nbsp;sysdate;&nbsp;<br>end;&nbsp;<br><br>select&nbsp;to_char(sys_date,'hh:mi:ss')&nbsp;from&nbsp;all_objects;&nbsp;<br>12.&nbsp;<br>获得小时数&nbsp;<br><br>Select&nbsp;EXTRACT(HOUR&nbsp;FROM&nbsp;TIMESTAMP&nbsp;'2001-02-16&nbsp;2:38:40')&nbsp;from&nbsp;offer&nbsp;<br>SQL&gt;&nbsp;select&nbsp;sysdate&nbsp;,to_char(sysdate,'hh')&nbsp;from&nbsp;dual;&nbsp;<br><br>SYSDATE&nbsp;TO_CHAR(SYSDATE,'HH')&nbsp;<br>--------------------&nbsp;---------------------&nbsp;<br>2003-10-13&nbsp;19:35:21&nbsp;07&nbsp;<br><br>SQL&gt;&nbsp;select&nbsp;sysdate&nbsp;,to_char(sysdate,'hh24')&nbsp;from&nbsp;dual;&nbsp;<br><br>SYSDATE&nbsp;TO_CHAR(SYSDATE,'HH24')&nbsp;<br>--------------------&nbsp;-----------------------&nbsp;<br>2003-10-13&nbsp;19:35:21&nbsp;19&nbsp;<br><br>获取年月日与此类似&nbsp;<br>13.&nbsp;<br>年月日的处理&nbsp;<br>select&nbsp;older_date,&nbsp;<br>newer_date,&nbsp;<br>years,&nbsp;<br>months,&nbsp;<br>abs(&nbsp;<br>trunc(&nbsp;<br>newer_date-&nbsp;<br>add_months(&nbsp;older_date,years*12+months&nbsp;)&nbsp;<br>)&nbsp;<br>)&nbsp;days&nbsp;<br>from&nbsp;(&nbsp;select&nbsp;<br>trunc(months_between(&nbsp;newer_date,&nbsp;older_date&nbsp;)/12)&nbsp;YEARS,&nbsp;<br>mod(trunc(months_between(&nbsp;newer_date,&nbsp;older_date&nbsp;)),&nbsp;<br>12&nbsp;)&nbsp;MONTHS,&nbsp;<br>newer_date,&nbsp;<br>older_date&nbsp;<br>from&nbsp;(&nbsp;select&nbsp;hiredate&nbsp;older_date,&nbsp;<br>add_months(hiredate,rownum)+rownum&nbsp;newer_date&nbsp;<br>from&nbsp;emp&nbsp;)&nbsp;<br>)&nbsp;<br><br>14.&nbsp;<br>处理月份天数不定的办法&nbsp;<br>select&nbsp;to_char(add_months(last_day(sysdate)&nbsp;+1,&nbsp;-2),&nbsp;'yyyymmdd'),last_day(sysdate)&nbsp;from&nbsp;dual&nbsp;<br><br>16.&nbsp;<br>找出今年的天数&nbsp;<br>select&nbsp;add_months(trunc(sysdate,'year'),&nbsp;12)&nbsp;-&nbsp;trunc(sysdate,'year')&nbsp;from&nbsp;dual&nbsp;<br><br>闰年的处理方法&nbsp;<br>to_char(&nbsp;last_day(&nbsp;to_date('02'&nbsp;||&nbsp;:year,'mmyyyy')&nbsp;),&nbsp;'dd'&nbsp;)&nbsp;<br>如果是28就不是闰年&nbsp;<br><br>17.&nbsp;<br>yyyy与rrrr的区别&nbsp;<br>'YYYY99&nbsp;TO_C&nbsp;<br>-------&nbsp;----&nbsp;<br>yyyy&nbsp;99&nbsp;0099&nbsp;<br>rrrr&nbsp;99&nbsp;1999&nbsp;<br>yyyy&nbsp;01&nbsp;0001&nbsp;<br>rrrr&nbsp;01&nbsp;2001&nbsp;<br><br>18.不同时区的处理&nbsp;<br>select&nbsp;to_char(&nbsp;NEW_TIME(&nbsp;sysdate,&nbsp;'GMT','EST'),&nbsp;'dd/mm/yyyy&nbsp;hh:mi:ss')&nbsp;,sysdate&nbsp;<br>from&nbsp;dual;&nbsp;<br><br>19.&nbsp;<br>5秒钟一个间隔&nbsp;<br>Select&nbsp;TO_DATE(FLOOR(TO_CHAR(sysdate,'SSSSS')/300)&nbsp;*&nbsp;300,'SSSSS')&nbsp;,TO_CHAR(sysdate,'SSSSS')&nbsp;<br>from&nbsp;dual&nbsp;<br><br>2002-11-1&nbsp;9:55:00&nbsp;35786&nbsp;<br>SSSSS表示5位秒数&nbsp;<br><br>20.&nbsp;<br>一年的第几天&nbsp;<br>select&nbsp;TO_CHAR(SYSDATE,'DDD'),sysdate&nbsp;from&nbsp;dual&nbsp;<br>310&nbsp;2002-11-6&nbsp;10:03:51&nbsp;<br><br>21.计算小时,分,秒,毫秒&nbsp;<br>select&nbsp;<br>Days,&nbsp;<br>A,&nbsp;<br>TRUNC(A*24)&nbsp;Hours,&nbsp;<br>TRUNC(A*24*60&nbsp;-&nbsp;60*TRUNC(A*24))&nbsp;Minutes,&nbsp;<br>TRUNC(A*24*60*60&nbsp;-&nbsp;60*TRUNC(A*24*60))&nbsp;Seconds,&nbsp;<br>TRUNC(A*24*60*60*100&nbsp;-&nbsp;100*TRUNC(A*24*60*60))&nbsp;mSeconds&nbsp;<br>from&nbsp;<br>(&nbsp;<br>select&nbsp;<br>trunc(sysdate)&nbsp;Days,&nbsp;<br>sysdate&nbsp;-&nbsp;trunc(sysdate)&nbsp;A&nbsp;<br>from&nbsp;dual&nbsp;<br>)&nbsp;<br><br><br><br>select&nbsp;*&nbsp;from&nbsp;tabname&nbsp;<br>order&nbsp;by&nbsp;decode(mode,'FIFO',1,-1)*to_char(rq,'yyyymmddhh24miss');&nbsp;<br><br>//&nbsp;<br>floor((date2-date1)&nbsp;/365)&nbsp;作为年&nbsp;<br>floor((date2-date1,&nbsp;365)&nbsp;/30)&nbsp;作为月&nbsp;<br>mod(mod(date2-date1,&nbsp;365),&nbsp;30)作为日.&nbsp;<br>23.next_day函数&nbsp;<br>next_day(sysdate,6)是从当前开始下一个星期五。后面的数字是从星期日开始算起。 
<img src ="http://www.blogjava.net/soddabao/aggbug/116157.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-05-09 12:51 <a href="http://www.blogjava.net/soddabao/archive/2007/05/09/116157.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于创建oracle dblink 过程的几点心得吧</title><link>http://www.blogjava.net/soddabao/archive/2007/03/09/102821.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 09 Mar 2007 06:57:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/03/09/102821.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/102821.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/03/09/102821.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/102821.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/102821.html</trackback:ping><description><![CDATA[     俩台不同的数据库服务器，从一台数据库服务器的一个用户读取另一台数据库服务器下的某个用户的数据，这个时候可以使用dblink。<br />     其实dblink和数据库中的view差不多，建dblink的时候需要知道待读取数据库的ip地址，ssid以及数据库用户名和密码。<br />       创建可以采用两种方式：<br />        1、已经配置本地服务<br />        
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">create</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">database</span><span style="COLOR: #000000"> <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />link fwq12 connect </span><span style="COLOR: #0000ff">to</span><span style="COLOR: #000000"> fzept<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />identified </span><span style="COLOR: #0000ff">by</span><span style="COLOR: #000000"> neu using </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">fjept</span><span style="COLOR: #ff0000">'</span></div>       CREATE DATABASE LINK数据库链接名CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘本地配置的数据的实例名’;<br />     2、未配置本地服务<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">create</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">database</span><span style="COLOR: #000000"> link linkfwq<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  connect </span><span style="COLOR: #0000ff">to</span><span style="COLOR: #000000"> fzept identified </span><span style="COLOR: #0000ff">by</span><span style="COLOR: #000000"> neu<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  using </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">(DESCRIPTION =<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    (ADDRESS_LIST =<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.202.12)(PORT = 1521))<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    )<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    (CONNECT_DATA =<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      (SERVICE_NAME = fjept)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    )<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  )</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">;</span></div><p>host＝数据库的ip地址，service_name＝数据库的ssid。<br />       其实两种方法配置dblink是差不多的，我个人感觉还是第二种方法比较好，这样不受本地服务的影响。<br /><br />       数据库连接字符串可以用NET8 EASY CONFIG或者直接修改TNSNAMES.ORA里定义.</p><p>       数据库参数global_name=true时要求数据库链接名称跟远端数据库名称一样</p><p>       数据库全局名称可以用以下命令查出<br />       SELECT * FROM GLOBAL_NAME;</p><p>       查询远端数据库里的表<br />       SELECT …… FROM 表名@数据库链接名;<br />       查询、删除和插入数据和操作本地的数据库是一样的，只不过表名需要写成“表名@dblink服务器”而已。</p><p><br />        附带说下同义词创建:</p><p>      CREATE SYNONYM同义词名FOR 表名;<br />     CREATE SYNONYM同义词名FOR 表名@数据库链接名;<br /><br />     删除dblink：DROP  PUBLIC  DATABASE  LINK linkfwq。<br /><br />      如果创建全局dblink，必须使用systm或sys用户，在database前加public。<br />参考资料:<br />  <a href="http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14231/ds_admin.htm#i1008271">http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14231/ds_admin.htm#i1008271</a><br /><br /></p><img src ="http://www.blogjava.net/soddabao/aggbug/102821.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-03-09 14:57 <a href="http://www.blogjava.net/soddabao/archive/2007/03/09/102821.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关java.sql.SQLException的错误</title><link>http://www.blogjava.net/soddabao/archive/2006/12/09/86573.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Sat, 09 Dec 2006 11:29:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/09/86573.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/86573.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/09/86573.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/86573.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/86573.html</trackback:ping><description><![CDATA[前几天,和我们的合作伙伴传输数据的时候,这边怎么也接收不到数据,后来跟踪一下,发现是对方出现了java.sql.SQLException Resultset: next,我就给他们电话过去了,他们找了好长时间也没找到原因,对方是个小公司,应该还没有我们一个二级部门大!就找我求助,我说你看一下是不是在 
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">       stmt</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">con.createStatement();      <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />       result</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">stmt.executeQuery(sql);    <br /><img id="Codehighlighter1_107_117_Open_Image" onclick="this.style.display='none'; Codehighlighter1_107_117_Open_Text.style.display='none'; Codehighlighter1_107_117_Closed_Image.style.display='inline'; Codehighlighter1_107_117_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_107_117_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_107_117_Closed_Text.style.display='none'; Codehighlighter1_107_117_Open_Image.style.display='inline'; Codehighlighter1_107_117_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />       </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(result.next())</span><span id="Codehighlighter1_107_117_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_107_117_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />        }</span></span></div><br />出问题了.今天打电话过来说问题解决了,果然是在我说的地方.<br />这地方我觉得他们是查询出的结果集合,没有next方法就直接用了.<br />如果用到ResultSet,感觉能封装,处理一下,效果会更好.<img src ="http://www.blogjava.net/soddabao/aggbug/86573.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-09 19:29 <a href="http://www.blogjava.net/soddabao/archive/2006/12/09/86573.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关oracle的字符集问题</title><link>http://www.blogjava.net/soddabao/archive/2006/12/05/85502.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 05 Dec 2006 02:26:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/05/85502.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/85502.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/05/85502.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/85502.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/85502.html</trackback:ping><description><![CDATA[         前几天因为和其他单位作接口,传输数据,我们用的xml文件,不过在传输过程中有乱码.起初我以为是程序的问题,xml文件我是jdom生成的,在jdom设置字符级是gb2312.后来查找半天也没发现什么不对的地方,后来和领导说了这个情况,领导说这是oracle的字符级的问题,那个字在oracle中就没有.<br />        知道是oracle的问题后,就研究oracle的字符级了.现将我这几天理解的发上来,大家共享一下.<br /><br />            <strong>一、什么是oracle字符集</strong>　　<br />          Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储，处理，检索数据。它使数据库工具，错误消息，排序次序，日期，时间，货币，数字，和日历自动适应本地化语言和平台。　　<br />         影响oracle数据库字符集最重要的参数是NLS_LANG参数。它的格式如下: 　　NLS_LANG = language_territory.charset 　　它有三个组成部分(语言、地域和字符集)，每个成分控制了NLS子集的特性。其中: 　　Language 指定服务器消息的语言，territory 指定服务器的日期和数字格式，charset 指定字符集。如:AMERICAN _ AMERICA. ZHS16GBK 　　从NLS_LANG的组成我们可以看出，真正影响数据库字符集的其实是第三部分。所以两个数据库之间的字符集只要第三部分一样就可以相互导入导出数据，前面影响的只是提示信息是中文还是英文。　　<br />         <br />            <strong>二、如何查询Oracle的字符集</strong>　　<br />               很多人都碰到过因为字符集不同而使数据导入失败的情况。这涉及三方面的字符集，一是oracel server端的字符集，二是oracle client端的字符集;三是dmp文件的字符集。在做数据导入的时候，需要这三个字符集都一致才能正确导入。　　<br />            1、查询oracle server端的字符集　　有很多种方法可以查出oracle server端的字符集，比较直观的查询方法是以下这种:SQL&gt;select userenv(‘language’) from dual; 　　结果类似如下:SIMPLIFIED CHINESE_CHINA.ZHS16GBK<br />         2、如何查询dmp文件的字符集　　用oracle的exp工具导出的dmp文件也包含了字符集信息，dmp文件的第2和第3个字节记录了dmp文件的字符集。如果dmp文件不大，比如只有几M或几十M，可以用UltraEdit打开(16进制方式)，看第2第3个字节的内容，如0354，然后用以下SQL查出它对应的字符集: 　　SQL&gt; select nls_charset_name(to_number('0354','xxxx')) from dual; 　　ZHS16GBK 　　如果dmp文件很大，比如有2G以上(这也是最常见的情况)，用文本编辑器打开很慢或者完全打不开，可以用以下命令(在unix主机上): 　　cat exp.dmp |od -x|head -1|awk '{print $2 $3}'|cut -c 3-6 　　然后用上述SQL也可以得到它对应的字符集。　　<br />            3、查询oracle client端的字符集　　这个比较简单。在windows平台下，就是注册表里面相应OracleHome的NLS_LANG。还可以在dos窗口里面自己设置，比如: 　　set nls_lang=AMERICAN_AMERICA.ZHS16GBK 　　这样就只影响这个窗口里面的环境变量。　　在unix平台下，就是环境变量NLS_LANG。　　$echo $NLS_LANG 　　AMERICAN_AMERICA.ZHS16GBK 　　如果检查的结果发现server端与client端字符集不一致，请统一修改为同server端相同的字符集。　　<br /><br />     <strong> 三、修改oracle的字符集　</strong>　上文说过，oracle的字符集有互相的包容关系。如us7ascii就是zhs16gbk的子集,从us7ascii到zhs16gbk不会有数据解释上的问题,不会有数据丢失。在所有的字符集中utf8应该是最大,因为它基于unicode,双字节保存字符(也因此在存储空间上占用更多)。　　一旦数据库创建后，数据库的字符集理论上讲是不能改变的。因此，在设计和安装之初考虑使用哪一种字符集十分重要。根据Oracle的官方说明，字符集的转换是从子集到超集受支持,反之不行。如果两种字符集之间根本没有子集和超集的关系，那么字符集的转换是不受oracle支持的。对数据库server而言，错误的修改字符集将会导致很多不可测的后果，可能会严重影响数据库的正常运行，所以在修改之前一定要确认两种字符集是否存在子集和超集的关系。一般来说，除非万不得已，我们不建议修改oracle数据库server端的字符集。特别说明，我们最常用的两种字符集ZHS16GBK和ZHS16CGB231280之间不存在子集和超集关系，因此理论上讲这两种字符集之间的相互转换不受支持。　　<br />      1、修改server端字符集(不建议使用) 　　在oracle 8之前，可以用直接修改数据字典表props$来改变数据库的字符集。但oracle8之后，至少有三张系统表记录了数据库字符集的信息，只改props$表并不完全，可能引起严重的后果。正确的修改方法如下: 　　$sqlplus /nolog 　　SQL&gt;conn / as sysdba; 　　若此时数据库服务器已启动，则先执行SHUTDOWN IMMEDIATE命令关闭数据库服务器，然后执行以下命令: 　　SQL&gt;STARTUP MOUNT; 　　SQL&gt;ALTER SYSTEM ENABLE RESTRICTED SESSION; 　　SQL&gt;ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; 　　SQL&gt;ALTER SYSTEM SET AQ_TM_PROCESSES=0; 　　SQL&gt;ALTER DATABASE OPEN; 　　SQL&gt;ALTER DATABASE CHARACTER SET ZHS16GBK; 　　SQL&gt;ALTER DATABASE national CHARACTER SET ZHS16GBK; 　　SQL&gt;SHUTDOWN IMMEDIATE; 　　SQL&gt;STARTUP 　　<br />         2、修改dmp文件字符集　　上文说过，dmp文件的第2第3字节记录了字符集信息，因此直接修改dmp文件的第2第3字节的内容就可以‘骗’过oracle的检查。这样做理论上也仅是从子集到超集可以修改，但很多情况下在没有子集和超集关系的情况下也可以修改，我们常用的一些字符集，如US7ASCII，WE8ISO8859P1，ZHS16CGB231280，ZHS16GBK基本都可以改。因为改的只是dmp文件，所以影响不大。　　具体的修改方法比较多，最简单的就是直接用UltraEdit修改dmp文件的第2和第3个字节。比如想将dmp文件的字符集改为ZHS16GBK，可以用以下SQL查出该种字符集对应的16进制代码: 　　SQL&gt; select to_char(nls_charset_id('ZHS16GBK'), 'xxxx') from dual; 　　0354 　　然后将dmp文件的2、3字节修改为0354即可。　　如果dmp文件很大，用ue无法打开，就需要用程序的方法了。网上有人用java存储过程写了转换的程序(用java存储过程的好处是通用性教好，缺点是比较麻烦)。<img src ="http://www.blogjava.net/soddabao/aggbug/85502.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-05 10:26 <a href="http://www.blogjava.net/soddabao/archive/2006/12/05/85502.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>weblogic与axis之间向冲突</title><link>http://www.blogjava.net/soddabao/archive/2006/11/24/83134.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 24 Nov 2006 00:41:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/11/24/83134.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/83134.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/11/24/83134.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/83134.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/83134.html</trackback:ping><description><![CDATA[我们的程序要调用另一个公司的一个接口，之间传递数据是采用xml的方法，我们这边取数据是用这个代码<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">            String wsURL </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> AppConst.KKSUrl;<br /></span><span style="COLOR: #008080">2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            Service service </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Service();<br /></span><span style="COLOR: #008080">3</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            Call call </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (Call) service.createCall();<br /></span><span style="COLOR: #008080">4</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            call.setOperationName(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> QName(wsURL, </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">getCodePowerNet</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br /></span><span style="COLOR: #008080">5</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            call.setTargetEndpointAddress(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> URL(wsURL));<br /></span><span style="COLOR: #008080">6</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span><span style="COLOR: #008080">7</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            String requestContent </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> getSimulatedXMLData();<br /></span><span style="COLOR: #008080">8</span><span style="COLOR: #000000"><img id="Codehighlighter1_328_345_Open_Image" onclick="this.style.display='none'; Codehighlighter1_328_345_Open_Text.style.display='none'; Codehighlighter1_328_345_Closed_Image.style.display='inline'; Codehighlighter1_328_345_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_328_345_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_328_345_Closed_Text.style.display='none'; Codehighlighter1_328_345_Open_Image.style.display='inline'; Codehighlighter1_328_345_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />            xmlReturn </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (String) call.invoke(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Object[] </span><span id="Codehighlighter1_328_345_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_328_345_Open_Text"><span style="COLOR: #000000">{ requestContent }</span></span><span style="COLOR: #000000">);</span></div><br />其中的call是org.apache.axis.client下的，以前我们的中间件是webshere，tomcat倒没发现什么异常，后来换成weblogic后，我们就怎么也取不到数据，但是再开发模式下就好用。<br />一步一步的跟踪发现是在这<br />xmlReturn = (String) call.invoke(new Object[] { requestContent });<br />出现问题。<br />查看错误日值发现是和weblogic的webserver相冲突了。<br />解决的方法有2种：<br /><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><span lang="EN-US"><font face="Times New Roman"><font size="3">1．</font><span style="FONT: 7pt 'Times New Roman'">  </span></font></span><font size="3"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">配置</span><span lang="EN-US"><font face="Times New Roman">weblogic.xml</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，强制</span><span lang="EN-US"><font face="Times New Roman">weblogic</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先加载应用</span><span lang="EN-US"><font face="Times New Roman">WEB-INF</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的</span><span lang="EN-US"><font face="Times New Roman">class</font></span></font></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><span lang="EN-US"><font face="Times New Roman"><font size="3">2．</font><span style="FONT: 7pt 'Times New Roman'">  </span></font></span><font size="3"><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">修改</span><span lang="EN-US"><font face="Times New Roman">startweblogic.cmd</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，将</span><span lang="EN-US"><font face="Times New Roman">axis</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下的</span><span lang="EN-US"><font face="Times New Roman">saaj.jar</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的路径放在</span><span lang="EN-US"><font face="Times New Roman">weblogic</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang="EN-US"><font face="Times New Roman">webservices.jar</font></span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之前。<br /></span></font></p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">container-descriptor</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">prefer-web-inf-classes</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">true</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">prefer-web-inf-classes</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">container-descriptor</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"> </span></div><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">不过这段代码加进去要注意先后顺序<br /></p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">&lt;!</span><span style="COLOR: #ff00ff">DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls610/dtd/weblogic-web-jar.dtd"</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">weblogic-web-app</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">jsp-descriptor</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">jsp-param</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">param-name</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">compileFlags</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">param-name</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">param-value</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">-g</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">param-value</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">jsp-param</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">jsp-param</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">param-name</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">keepgenerated</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">param-name</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">param-value</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">true</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">param-value</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">jsp-param</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">jsp-descriptor</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">container-descriptor</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">prefer-web-inf-classes</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">true</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">prefer-web-inf-classes</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">container-descriptor</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">charset-params</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">input-charset</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">resource-path</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">/*</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">resource-path</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">java-charset-name</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">GBK</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">java-charset-name</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">input-charset</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">charset-params</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #0000ff">&lt;</span><span style="COLOR: #800000">context-root</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000">/bdsc</span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">context-root</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">&lt;/</span><span style="COLOR: #800000">weblogic-web-app</span><span style="COLOR: #0000ff">&gt;</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><br /></p>但是我们和bea的人交流过，他们说不建议修改weblogic.xml，不过我觉得你在path前指定jar感觉不方便，因为weblogic中出现这种问题的时候比较多，比如连接oracle数据库的驱动就会出现冲突。还是修改weblogic.xml一劳永逸！<img src ="http://www.blogjava.net/soddabao/aggbug/83134.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-11-24 08:41 <a href="http://www.blogjava.net/soddabao/archive/2006/11/24/83134.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数据的自动备份</title><link>http://www.blogjava.net/soddabao/archive/2006/11/15/81378.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 15 Nov 2006 13:27:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/11/15/81378.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/81378.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/11/15/81378.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/81378.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/81378.html</trackback:ping><description><![CDATA[
		<p>再好的服务器都会出事，我们用的ibm的服务，有个客户的服务器在一周内出事8次，数据库的服务器出事，oracle中的数据全没有，我们备份的数据再数据库的机子上，结果机子起不来，后来为了防止机子再出现问题，我就再3个计算机上做备份，这样不会3个机子上都会出问题。不过问题又出来了，每天都备份再3个机子上，那么多备份的文件若不及时删掉，保留再机子也是特别占地方的。<br />我就写了个java程序，删除2天前的文件，然后再备份数据库，这样就不会很多数据库备份文件。<br />import java.io.File;<br />import java.util.Calendar;</p>
		<p>public class BakDate {</p>
		<p> String name[] = { "fzept", "ndept", "npept", "ptept", "lyept", "zzept" };</p>
		<p> public static void main(String[] args) throws InterruptedException {<br />  BakDate bakDate = new BakDate();<br />  String file = "F:/wang/bat";<br />  String file1 = "F:/wang";<br />  bakDate.runbatFile(file);<br />        bakDate.deleteOldFile(file1);<br /> }</p>
		<p> public void runbatFile(String strOldFilePath) {<br />  try {<br />   Runtime rt = Runtime.getRuntime();<br />   Process ps = null;</p>
		<p>   String filename[] = new String[name.length];<br />   for (int i = 0; i &lt; name.length; i++) {<br />    filename[i] = strOldFilePath + "/" + name[i] + ".bat";<br />    ps = rt.exec("cmd.exe /C start " + filename[i]);<br />    ps.waitFor();<br />   }</p>
		<p>  } catch (Exception e) {<br />   System.out.println("OracleTableChecker : rebuildDb Error!!!");<br />   e.printStackTrace();</p>
		<p>  }<br /> }<br /> public void deleteOldFile(String strOldFilePath) {<br />  Calendar today = Calendar.getInstance();<br />  today.add(Calendar.DAY_OF_MONTH, -2);<br />  String now = today.get(Calendar.YEAR) + "-"<br />    + (today.get(Calendar.MONTH) + 1) + "-"<br />    + today.get(Calendar.DATE);</p>
		<p>  String filename[] = new String[name.length];<br />  for (int i = 0; i &lt; name.length; i++) {<br />   filename[i] = name[i] + now + ".DMP";<br />  }</p>
		<p>  for (int i = 0; i &lt; filename.length; i++) {<br />   new File(strOldFilePath + "/" + filename[i]).delete();<br />  }</p>
		<p> }<br />}<br /></p>
<img src ="http://www.blogjava.net/soddabao/aggbug/81378.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-11-15 21:27 <a href="http://www.blogjava.net/soddabao/archive/2006/11/15/81378.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>