求助!关于PreparedStatement 就是呀,不设置呀!在SQL语句中,添加新的记录,没说一定要指定指呀,除了定义为not null的字段. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我可能没说清楚,我要用的是预编译sql语句,不是普通sql语句比如sql=insert into table (id,name)values(?,?)id是数据库中自动编号的字段如果是普通sql语句 insert int table (id,name) values('','jonkeyjohns'),就可以做到id自动增加了。但是,我必须要用前者,预编译的sql语句。PreparedStatement pstmt = connection.prepareStatement(sql);pstmt.setInt("id",0)//出问题的地方pstmt.setString("name","jonkeyjohns")pstmt.executeUpdate(); 如果你在创建数据库表的时候,告诉数据库,id这个字段是自增的那么,你的insert语句中不应该有id这个字段的赋值,那已经由数据库负责了如果数据库表中没有这样的设计,只是你想在程序中实现那你pstmt.setInt("id",0);这条语句的第二个参数应该是一个你来控制递增数字 PreparedStatement有你这么用的嘛?你可以在那个地方用变量的:sql=insert into table (id,name)values(?,?)PreparedStatement ps = connection.prepareStatement(sql);pstmt.setInt(1,id);pstmt.setString(2,name);ResultSet rs = ps.execute(); 感谢danceflash(Wine)只要不为这个字段赋值就可以了再次感谢 不能编译和编译错误各是什么情况 java的文本域中怎么锁定它啊!也就不让它写,只可以去读,不可编辑! 请给出下列题的详细解释,谢谢! 在上海做对日软件程序员待遇有多少?本人以前没有对日开发的经验,做过2年的软件开发。 如何使用java实现下面问题 谁能给出一个调用getClass().getClassLoader().getResourceAsStream的例子 关闭窗口时的一个小问题! 如何以重试多次代替异常 打开保存对话框问题? (请各位帮~~~~~~~~忙啊) 如何设置邮件信息体的类型 (Content-Type:) ? 各位高手,我用java连DB2怎么就不好使呢? 一个网络测试程序
比如sql=insert into table (id,name)values(?,?)
id是数据库中自动编号的字段
如果是普通sql语句 insert int table (id,name) values('','jonkeyjohns'),就可以做到id自动增加了。
但是,我必须要用前者,预编译的sql语句。
PreparedStatement pstmt = connection.prepareStatement(sql);
pstmt.setInt("id",0)//出问题的地方
pstmt.setString("name","jonkeyjohns")
pstmt.executeUpdate();
那么,你的insert语句中不应该有id这个字段的赋值,那已经由数据库负责了如果数据库表中没有这样的设计,只是你想在程序中实现
那你pstmt.setInt("id",0);这条语句的第二个参数应该是一个你来控制递增数字
你可以在那个地方用变量的:
sql=insert into table (id,name)values(?,?)
PreparedStatement ps = connection.prepareStatement(sql);
pstmt.setInt(1,id);
pstmt.setString(2,name);
ResultSet rs = ps.execute();
只要不为这个字段赋值就可以了
再次感谢