20120321oracle
Oracle
1,驱动错误
Connection error occured: org.jboss.resource.connectionmanager.TxConnectionManager$TxConnectionEventListener@fd5fe5[state=NORMAL mc=org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@bc0658 handles=1 lastUse=1328712829576 permit=true trackByTx=false mcp=org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool@448e3f context=org.jboss.resource.connectionmanager.InternalManagedConnectionPool@d6e4e8 xaResource=org.jboss.resource.connectionmanager.TxConnectionManager$LocalXAResource@4e3bc6 txSync=null]
javax.resource.spi.ResourceAdapterInternalException: Unexpected error
...
Caused by: java.lang.AbstractMethodError: oracle.jdbc.driver.T4CConnection.createClob()Ljava/sql/Clob;
at org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6.createClob(WrappedConnectionJDK6.java:128)
原因:驱动不符。将ojdbc14换成ojdbc6后错误消失。
2,error:[CachedConnectionManager] Closing a connection for you. Please close them yourself: org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6@916631 java.lang.Throwable: STACKTRACE
原因:这个错误是其他问题导致数据库连接没有及时关闭而产生的错误。
3,Date格式化及相减(http://www.techonthenet.com/oracle/functions/trunc_date.php)
In Oracle/PLSQL, the trunc function returns a date truncated to a specific unit of measure.
The syntax for the trunc function is:
trunc ( date, [ format ] )
date is the date to truncate.
format is the unit of measure to apply for truncating. If the format parameter is omitted, the trunc function will truncate the date to the day value, so that any hours, minutes, or seconds will be truncated off.
TRUNC()函數分兩種
a.TRUNC(for dates)
TRUNC函數為指定元素而截去的日期值。
其具體的語法格式如下:
TRUNC(date[,fmt])
其中:
date 一個日期值
fmt 日期格式,該日期將由指定的元素格式所截去。忽略它則由最近的日期截去
下面是該函數的使用情況:
TRUNC(TO_DATE(’24-Nov-1999 08:00 pm’,’dd-mon-yyyy hh:mi am’))
=’24-Nov-1999 12:00:00 am’
TRUNC(TO_DATE(’24-Nov-1999 08:37 pm’,’dd-mon-yyyy hh:mi am’,’hh’))
=’24-Nov-1999 08:00:00 am’
b.TRUNC(for number)
TRUNC函數返回處理後的數值,其工作機制與ROUND函數極為類似,只是該函數不對指定小數前或後的部分做相應捨入選擇處理,而統統截去。
其具體的語法格式如下
TRUNC(number[,decimals])
其中:
number 待做截取處理的數值
decimals 指明需保留小數點後面的位數。可選項,忽略它則截去所有的小數部分
下面是該函數的使用情況:
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80
注意:第二個參數可以為負數,表示為小數點左邊指定位數後面的部分截去,即均以0記。