我在一個MySQL數據庫中使用for循環做了一些插入操作。Java和MySQL:'主鍵'異常的重複值
我有一個自動遞增的問題,原因是第一次插入後我得到一個com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException。
下面的代碼:
for (int i=0; i<numKeys; i++) {
try {
stm1 = this.db_connection.prepareStatement("INSERT INTO mytable (Cod, Prop, Field, Value) VALUES (?,?,?,?)");
stm1.setInt(1, Statement.RETURN_GENERATED_KEYS);
stm1.setInt(2, 0);
stm1.setString(3, aname);
stm1.setString(4, avalue);
stm1.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
鱈魚是一種自動遞增場。
我不認爲這會工作,您正在將不同數量的參數傳遞給sql語句中的值。請參閱下面的答案。爲了澄清,你需要刪除其中的一個?在你的sql語句的值部分,因此只有3個。 – 2012-07-05 09:07:07
@JonTaylor是我的錯! Thnks! – sergiofbsilva 2012-07-05 09:11:21