java往数据库sql中添加数据,怎么让主键自增
StringinsertCondition="INSERTINTOdingdan(id,sname,snumber,rname,rnumber,address,beizh...
String insertCondition="INSERT INTO dingdan(id,sname,snumber,rname,rnumber,address,beizhu,cdate) VALUES (null,?,?,?,?,?,?,?)";
sql=con.prepareStatement(insertCondition);
sql.setString(1,handleString(sname));
sql.setString(2,handleString(snumber));
sql.setString(3,handleString(rname));
sql.setString(4,handleString(rnumber));
sql.setString(5,handleString(address));
sql.setString(6,handleString(beizhu));
sql.setTimestamp(7,new Timestamp(System.currentTimeMillis())); //获取系统当前时间
int m=sql.executeUpdate();
这样写对不对?第一列id是主键,想让它自动生成。然后从第二列sname开始插入, sql.setString(1,handleString(sname));这儿的“1”对吗?应该用“2”吗?那也不行啊 展开
sql=con.prepareStatement(insertCondition);
sql.setString(1,handleString(sname));
sql.setString(2,handleString(snumber));
sql.setString(3,handleString(rname));
sql.setString(4,handleString(rnumber));
sql.setString(5,handleString(address));
sql.setString(6,handleString(beizhu));
sql.setTimestamp(7,new Timestamp(System.currentTimeMillis())); //获取系统当前时间
int m=sql.executeUpdate();
这样写对不对?第一列id是主键,想让它自动生成。然后从第二列sname开始插入, sql.setString(1,handleString(sname));这儿的“1”对吗?应该用“2”吗?那也不行啊 展开
2个回答
展开全部
首先,你如果想把id列设置为自增列,直接在数据库中将其设置为自增列就可以了。
然后,等你添加数据的时候使用如下的语句:
INSERT INTO dingdan(sname,snumber,rname,rnumber,address,beizhu,cdate) VALUES (?,?,?,?,?,?,?)
数据库会自动帮你添加id列的值。 所以,你的这个代码可以改为:
String insertCondition="INSERT INTO dingdan(sname,snumber,rname,rnumber,address,beizhu,cdate) VALUES (?,?,?,?,?,?,?)";
sql=con.prepareStatement(insertCondition);
sql.setString(1,handleString(sname));
sql.setString(2,handleString(snumber));
sql.setString(3,handleString(rname));
sql.setString(4,handleString(rnumber));
sql.setString(5,handleString(address));
sql.setString(6,handleString(beizhu));
sql.setTimestamp(7,new Timestamp(System.currentTimeMillis())); //获取系统当前时间
int m=sql.executeUpdate();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询