[英]Java insert into table with auto increment field
如何通過主鍵自動增量插入表中? 我想使用准備好的語句,並且不斷收到此錯誤0 <1 ...我嘗試了該語句,它有效:S
public void insertDobavitelj (String dobavitelj,String naslov, String telefon) {
String query = "INSERT INTO dobavitelj(ime,naslov,telefon) VALUES ('"+dobavitelj+"','"+naslov+"','"+telefon+"')";
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement();
stmt.executeUpdate(query);
/*stmt = conn.prepareStatement(query);
// stmt.setInt(1, 0);
stmt.setString(0, dobavitelj);
stmt.setString(1, naslov);
stmt.setString(2, telefon);
if (stmt.executeUpdate() == 1) {
JOptionPane.showMessageDialog(frame, "Uspesno ste dodali novega dobavitelja");
}
*/
}catch (ClassNotFoundException e) {
JOptionPane.showMessageDialog(frame,"Class not found - insert dobavitelj" );
}catch (SQLException exception) {
JOptionPane.showMessageDialog(frame, "SQL Exception - insert dobavitelj");
exception.printStackTrace();
}
我嘗試過:
"INSERT INTO dobavitelj(ime,naslov,telefon) VALUES ('?'.'?','?')"
"INSERT INTO dobavitelj(idDobavitelja,ime,naslov,telefon) VALUES (?.'?'.'?','?')"
謝謝好人:)
您正在使用stmt.setString(0, dobavitelj);
索引為零,該語句的索引從1開始。
還可以將查詢語法更改為: INSERT INTO dobavitelj(ime,naslov,telefon) VALUES ('?'.'?','?')
您可以創建一個隨機數變量,將其插入mysql的自動增量列中。 將隨機數乘以1000可獲得999個值,或者將10000限制為9999個值; int randomnumber = (int) math.random() * 1000
statement.setInt(1, randomnumber)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.