preparedstatement不会将数据发送到数据库

4ioopgfo  于 2021-07-07  发布在  Java
关注(0)|答案(1)|浏览(410)

我不确定为什么我的程序实际上不会将提供的数据发送到数据库表中的表。我使用一个javafx应用程序表从表中选择一个客户机,当被选中并且登录时,该方法将信息发送到 DBconnect 类来执行操作。
方法将数据发送到 DBconnect 班级:

public void signIn() throws SQLException {
    BloomClient person = clientList.getSelectionModel().getSelectedItem();
    dBconnect.sendToRoster(person.getFirstName(),person.getLastName());
}

执行的方法 PreparedStatement :

public void sendToRoster(String fName, String lName) throws SQLException {
    PreparedStatement st = c.prepareStatement("INSERT INTO sign_in_roster VALUES(?,?,?,?);");
    c.setAutoCommit(false);
    try {
        st.setString(1,fName);
        st.setString(2,lName);
        st.setString(3, systemDate());
        st.setString(4, systemTime());
        c.commit();
    } catch (SQLException e) {
        System.out.println(e.getMessage());
    }
}
slwdgvem

slwdgvem1#

您已经设置了所有绑定变量,但忘记执行语句:

st.setString(1,fName);
st.setString(2,lName);
st.setString(3, systemDate());
st.setString(4, systemTime());
st.executeUpdate(); // Here
c.commit();

相关问题