gpt4 book ai didi

java - 使用 preparedStatement 设置 mysql 主键字段时出错

转载 作者:可可西里 更新时间:2023-11-01 07:49:08 24 4
gpt4 key购买 nike

这是我插入一行的代码。这些列是:主 ID、名称和艺术家。

我是否正确传递了主要 ID,因为它一直给我一个错误?它设置为 1,并在每次添加行时递增。

try {
//Database
String query = "INSERT INTO lyrics1(lyrics1_id, name, artist) values(?, ?, ?)";
PreparedStatement statement = connection.prepareStatement(query);
statement.setString(2, nameOfSong.getText()); // set input parameter 2
statement.setString(3, artist.getText());
statement.setLong(i, i);
ResultSet rs = statement.executeQuery("SELECT * FROM lyrics1");
while (rs.next()){
System.out.println(rs.getString(1));
}
statement.execute();
rs.close();
statement.close();
connection.close();
i++;

} catch (SQLException insertException) {
displaySQLError(insertException);
}

错误是:

SQLException: No value specified for parameter 1 SQLState: 07001 VendorError: 0 

最佳答案

如果您的主键是 AUTO_INCREMENT,这听起来像是,您没有通过 INSERT 语句传递它,它会自动为您处理。这就是你想要做的:

INSERT INTO lyrics1(name, artist)
VALUES(?, ?)

关于java - 使用 preparedStatement 设置 mysql 主键字段时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8435302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com