如何插入主键自增的表? 我想使用准备好的语句,但我不断收到此错误 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 ('?'.'?','?')
关于Java插入具有自动增量字段的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20725181/