String sql = "INSERT INTO user (userid, username, password, lastname, firstname, "
+ "middlename, birthdate, gender, address, email, contact, "
+ "marital_status, religion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)";
try {
pst = conn.prepareStatement(sql);
pst.setString(1, username);
pst.setString(2, password.toString()); //chartype
pst.setString(3, lastName);
pst.setString(4, firstName);
pst.setString(5, middleName);
pst.setString(6, birthdate);
pst.setString(7, gender1);
pst.setString(8, address1);
pst.setString(9, email1);
pst.setLong(10, mobile);
pst.setString(11, status1);
pst.setString(12, religion1);
pst.execute();
}catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
我有13列,userid是自动增量。但我不知道你怎么做不需要放置用户ID。如何在java中的数据库中插入值
我得到这个错误。我想要自动增量ID。所以没有必要输入正确的?
Column count doesn't match value count at row 1
您可以删除该字段,因为它是auto_increment列或传递NULL值。例如'VALUES(NULL,?,?,.....' –
发送'NULL'或删除'userid'列。我还建议您使用['INSERT INTO ... SET'](http: //milov.nl/2836)语法来提高可读性 –
避免插入命令中的user_id或只传递null null –