Calling this proc from C# works as expected (all unicode characters are properly stored).
Expand|Select|Wrap|Line Numbers
- String driver = "oracle.jdbc.OracleDriver";
- Class.forName(driver);
- DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
- conn = DriverManager.getConnection(url, username, password);
- CallableStatement storedProc = conn.prepareCall("{call SMSC.p_smsu_campaign_insert(?,?,?,?,?,?)}");
- String campaign="_šđčćž ò#±¦ţ!ę";
- storedProc.setString("Campaign_name", campaign); //<----problem here!
- //Campaign_name parameter in DB is nchar type (oracle's unicode type)
- /*set other parameters*/
- storedProc.execute();
Note: this is a simplification of my previous post