簡體   English   中英

如何從Java Netbeans中的GUI更新表?

[英]How to update table from GUI in Java Netbeans?

我正在設計使用Java Netbeans的GUI,並試圖從GUI字段中將值插入表中。 它沒有顯示錯誤,但是沒有插入任何內容。 這是我的代碼:

Statement stmt = null;
try {

    String sql = "Insert into Elective (subject_code,topic,syllabus,credit,Expert_ID,startsession,endsession) values (?,?,?,?,?,?,?)";
    pst = conn.prepareStatement(sql);
    String subject = Subject_code.getSelectedItem().toString();
    pst.setString(1, subject);
    pst.setString(2, topic.getText());
    pst.setString(3, syllabus.getText());
    pst.setString(4, credit.getText());

    String Expert = Expert_ID.getSelectedItem().toString();
    pst.setString(5, Expert);

    int y1 = startsession.getYear();
    int y2 = endsession.getYear();
    pst.setInt(6, y1);
    pst.setInt(7, y2);
    //ResultSet executeQuery = pst.executeQuery();
    stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery("SELECT * FROM Elective;");
    while (rs.next()) {
        String subject_code1 = rs.getString("subject_code");
        String topic1 = rs.getString("topic");
        String syllabus1 = rs.getString("syllabus");
        String credit1 = rs.getString("credit");
        String Expert_ID1 = rs.getString("Expert_ID");
        int startsession1 = rs.getInt("startsession");
        int endsession1 = rs.getInt("endsession");
        System.out.println("Subject Code = " + subject_code1);
        System.out.println("Topic = " + topic1);
        System.out.println("Syllabus=" + syllabus1);
        System.out.println("Credit = " + credit1);
        System.out.println("Expert_ID = " + Expert_ID1);
        System.out.println("Start session = " + startsession1);
        System.out.println("End session = " + endsession1);
        System.out.println();
    }
    rs.close();
    stmt.close();

} catch (Exception e) {
    JOptionPane.showMessageDialog(null, e);
}

您應該使用executeUpdate()而不是executeQuery()方法對數據庫進行更新,並且executeUpdate()不返回ResultSet

采用

 pst.executeUpdate();

ResultSet executeQuery = pst.executeQuery();//not correct

不知道為什么要注釋該行。大概這就是為什么您不會收到任何錯誤的原因

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM