概述
public void insert(Note note)throws Exception
{
String sql = "INSERT INTOnote(id,title,author,content) VALUES(?,?,?,?)" ;
PreparedStatement pstmt = null;
DataBaseConnection dbc = null;
dbc = new DataBaseConnection();
try
{
pstmt =dbc.getConnection().prepareStatement(sql);
//关键代码,费了很多时间才找到的解决办法
pstmt.setNull(1,1);
pstmt.setString(2,note.getTitle());
pstmt.setString(3,note.getAuthor());
pstmt.setString(4,note.getContent());
pstmt.executeUpdate();
pstmt.close();
}
catch (Exception e)
{
//System.out.println(e) ;
throw newException("操作中出现错误!!!") ;
}
finally
{
dbc.close();
}
}
ps:1.当已经给auto_increment赋某值时,继续赋相同值给它,会出错。
2.在java中如果要insert一行数据给数据表,且该行有auto_increment,如果auto_increment没有初值,会报错。
如果auto_increment已有值,则sql语句中auto_increment对应的值应为null,如:
con.modify(sql,null,user, password, contact, email);
最后
以上就是彩色大炮为你收集整理的mysql中的auto_increment如何重新赋值 ---PreparedStatement的setNull()的全部内容,希望文章能够帮你解决mysql中的auto_increment如何重新赋值 ---PreparedStatement的setNull()所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复