【发布时间】:2011-08-28 15:10:04
【问题描述】:
我正在使用存储过程通过 Spring Framework 的存储过程类将一些数据插入 SQL 2005 DB。类声明有点像:
private class InsertShippingAddress extends StoredProcedure {
public InsertShippingAddress(final DataSource ds) {
super(ds, "usp_adiPromoInsertShippingDetail");
super.declareParameter(new SqlParameter("in_FirstName", Types.VARCHAR));
compile();
}
}
我正在像这样执行 SP:
final InsertShippingAddress insertShippingAddress = new InsertShippingAddress(
getJdbcTemplate().getDataSource());
final Map<String, Object> inParams = new HashMap<String, Object>();
inParams.put("in_FirstName", name);
insertShippingAddress.execute(inParams);
现在的问题是,名称字符串包含法语中的重音字符,但是在存储时,字符串 èüÀÔàé 以扭曲的方式存储为 eu¨AO^a`e´。但如果我真的去通过 SQL 管理工作室执行 SP,它会正确保存。我不知道我哪里错了。请帮忙。
提前致谢, 纳兰
【问题讨论】:
标签: java sql-server-2005 spring stored-procedures non-ascii-characters