Hibernate version: 3.0
Name and version of the database you are using: Oracle 9i & 10g via the Oracle Thin JDBC Driver
Problem description: I'm having problems inserting UTF8 characters into nvarchar2 fields in an Oracle database. The character I'm using to test is the euro character. It is represented in UTF8 as 3 bytes: 0xE2 0x82 0xAC. After the insert statement executes I look in the database and see the following 6 bytes stored in the column: 0xC3 0xA2 0xC2 0xBF 0xC2 0xAC.
I've captured the query being generated by hibernate and indeed the appropriate three bytes are being inserted into the prepared statement. However, when I capture the insesrt statement being submitted to Oracle by the JDBC thin driver those 3 bytes have been converted to the bogus 6 bytes
I have attempted the following to fix:
- upgrade to the 10.1.0.4.0 JDBC driver from Oracle
- set both the national characterset and the normal characterset of the database to UTF8 (as suggested in one of the last posts in topic
http://forum.hibernate.org/viewtopic.php?t=925490)
Is there any know fix for this behavior?
Cheers,
Bill