读书人

Spring中jdbctemplet的时候如果有需要

发布时间: 2012-01-21 21:31:43 作者: rapoo

Spring中jdbctemplet的时候如果有需要插入null的应该怎么处理啊!
Spring中jdbctemplet的时候如果有需要插入null的应该怎么处理啊!

原代码如下啊:
String strSql = "insert into table ( filed1,filed2) values (?,?) ";
Object[] _obj=new Object[2];
_obj[0] = System.currentTimeMillis();
_obj[1] = null;
jdbctemplet.update(strSql,_obj);

后台打印出来语句:
insert into table ( filed1,filed2) values ( '1184841010859 ', 'null ')

后台提示错误:
PreparedStatementCallback; uncategorized SQLException for SQL [insert into table ( filed1,filed2) values (?,?)]; SQL state [null]; error code [17004]; 无效的列类型; nested exception is java.sql.SQLException: 无效的列类型
org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [insert into table ( filed1,filed2) values (?,?)]; SQL state [null]; error code [17004]; 无效的列类型; nested exception is java.sql.SQLException: 无效的列类型
java.sql.SQLException: 无效的列类型

Spring的jdbctemplet怎么设置能打印出来这样的语句
insert into table (filed1,filed2) values ( '1184841010859 ',null)

===========================这样没问题
如果不插入null就不会出错
String strSql = "insert into table ( filed1,filed2) values (?,?) ";
Object[] _obj=new Object[2];
_obj[0] = System.currentTimeMillis();
_obj[1] = "test ";
jdbctemplet.update(strSql,_obj);


[解决办法]
不能设置成如果 NULL 就赋 " " 因为字段类型可能是int这样的话就会抛出异常

自己没分了请 闭月羞花猫 帮发的
感谢他了

读书人网 >J2SE开发

热点推荐