ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bostjan Dolenc <bostjan.dol...@marand.si>
Subject Re: IBatis and Oracle stored functions
Date Tue, 04 Jan 2005 18:15:19 GMT
Jan Vissers wrote:

> Hi,
> 
> I'm evaluating IBatis sqlMap/DAO wrt Oracle functionality, like:
>     * CLOB (oracle.sql.CLOB) >32K
 >     * BLOB (oracle.sql.BLOB)
For CLOB, try using Oracle 10g drivers (even if RDBMS is 9.2) and pass a 
property "SetBigStringTryClob=true" to the driver. This makes Oracle 
CLOBs almost standard compliant. I had some problems with 10g thin 
drivers, which crashed at 4000 chars. Works fine with OCI, though.

Set the property that either on connection pool definition or 
programmatically:
---
Properties props = new Properties();
props.put("SetBigStringTryClob", "true");
connection = 
DriverManager.getConnection("jdbc:oracle:thin:scott/tiger@192.168.1.188:1521 
:o rclbox1", props);
---
Anyway, Oracle CLOBS are a pain in the ***, even in 10g. That is true 
for iBatis, plain JDBC and Hibernate.

As for BLOBs, I'll have to investigate the issue no matter what, as I'll 
have to use them on a project next week...

> It looks to me that none of these are really supported. I, for instance 
> have a packaged function:
> 
>     function insert_record( p_i_values in pck2.refcursortype)
>     return   pck2.refcursortype;
I suppose this function is a "type unsafe insert"? If it isn't (if 
refcursor's type is "static"), you could try mapping refcursor to a 
table object type. But as Clinton said, try a custom type handler.

Cheers,
bd

Mime
View raw message