Spring JDBC& Oracle NVarchar:utf8错误

时间:2014-03-19 15:57:20

标签: java jdbc oracle11g spring-jdbc

我尝试将UTF8字符插入NVarchar列

作品参数jvm:

-Ddefault.nvarchar=true 

此参数无法在生产中使用,因为我们在nvarchar列上有索引(并且应用程序太慢)

Works(Java / JDBC):

dbConnection = ds.getConnection();
preparedStatement = dbConnection.prepareStatement(insertStmt);
preparedStatement.setNString(i++, user.getFirstName());

数据在数据库中是正确的

不起作用(春天):

final MapSqlParameterSource map = new MapSqlParameterSource();
map.addValue("firstName", user.getFirstName(), Types.NVARCHAR);
this.jdbcTemplate.update(insertStmt, map);

org.springframework.jdbc.UncategorizedSQLException:PreparedStatementCallback;未分类SQL的SQLException [SQL状态[99999];错误代码[17004]; de colonne non valide;嵌套异常是java.sql.SQLException:键入de colonne non valide

不起作用(Spring Beans):

final SqlParameterSource params = new BeanPropertySqlParameterSource(user);
this.jdbcTemplate.update(insertStmt, params);

我想使用Spring jdbc并设置nvarchar值。 感谢

0 个答案:

没有答案