Java 无法将行插入MySQL数据库
我有一个带有lyrics1表的数据库歌词,下面的代码我想在lyrics1中插入一行 但是,当我回到mysql客户端并对lyrics1进行描述时,它还没有更新 我没有收到错误,它连接到数据库很好。至少我没有收到错误,说它无法Java 无法将行插入MySQL数据库,java,mysql,jdbc,Java,Mysql,Jdbc,我有一个带有lyrics1表的数据库歌词,下面的代码我想在lyrics1中插入一行 但是,当我回到mysql客户端并对lyrics1进行描述时,它还没有更新 我没有收到错误,它连接到数据库很好。至少我没有收到错误,说它无法 connectToDB(); ok.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { St
connectToDB();
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
String query = "INSERT INTO lyrics1(name, artist) values(?, ?)";
PreparedStatement statement = connection.prepareStatement(query);
statement.setString(1, nameOfSong.getText()); // set input parameter 2
statement.setString(2, artist.getText());
ResultSet rs = statement.executeQuery("SELECT * FROM lyrics1");
while (rs.next()){
System.out.println(rs.getString(1));
}
rs.close();
statement.close();
connection.close();
} catch (SQLException insertException) {
displaySQLError(insertException);
}
internalFrame.dispose();
}
});
您永远不会实际执行
INSERT
语句,您只需创建它,而不会实际执行它。您正在执行一个SELECT
,但实际上没有任何内容将INSERT
语句发送到服务器
您需要首先调用它,它将返回受影响的行数,大多数情况下,您希望检查插入的行数是否等于1,更新和删除的行数是否大于零。我执行它,只是没有显示其余的代码,本质上我调用了此代码所使用的方法。.您发布的代码基本上有缺陷,您需要发布整个内容或至少是正确的内容,这在逻辑上是不正确的。