我正在使用jdbctemplate进行插入查询。此查询在SQL Server Studio中正常工作。但是当我使用jdbctemplate时,这给出了UncategorizedSQLException的例外
总例外
org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [INSERT INTO Test (ID, NAME) VALUES (?, ?)]; SQL state [null]; error code [0]; The conversion from UNKNOWN to UNKNOWN is unsupported.; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: The conversion from UNKNOWN to UNKNOWN is unsupported.
我的代码是
sqlServerJdbcTemplate.update(
"INSERT INTO Test (ID, NAME) VALUES (?, ?)",
new Object[]{101, "Dave"},
new Object[]{Types.INTEGER, Types.VARCHAR}
);
只有两列ID和NAME的Integer和varchar类型。
此流程中的问题是什么?任何想法都将不胜感激。
P.S:SQL服务器是数据库
答案 0 :(得分:2)
要避免此问题,您可以删除new Object[]{Types.INTEGER, Types.VARCHAR}
并让DBMS检测每个输入的类型:
sqlServerJdbcTemplate.update(
"INSERT INTO Test (ID, NAME) VALUES (?, ?)",
new Object[]{101, "Dave"}
);