2016-03-03 59 views
0

我正尝试使用Java JDBC更新我的表。但我不知道如何使用准备好的语句来调用我的主键。我尝试为我的数据库的列创建一个USER_ID对象,但不知道从何处开始。我将如何确定我是否已经更新了我的数据库?如何获得执行select语句的主键

INSERT

private void addBtnActionPerformed(java.awt.event.ActionEvent evt) { 
    String inputEmployee = employeeTf.getText(); 
    String inputDepartment = departmentTf.getText(); 

    if(inputEmployee.isEmpty() && inputDepartment.isEmpty()){ 
     JOptionPane.showMessageDialog(null, "Please fill up!"); 
    } 
    else if(inputEmployee.isEmpty()){ 
     JOptionPane.showMessageDialog(null, "Please enter your username"); 
    } 
    else if(inputDepartment.isEmpty()){ 
     JOptionPane.showMessageDialog(null, "Please enter your password"); 
    } 
    else{ 
     String myQuery = "INSERT INTO SAMPLE (EMPLOYEENAME,DEPARTMENT) VALUES (?,?)"; 

     try(Connection con = DBUtilities.getConnection(DBType.JDBC); 
     PreparedStatement myPs = con.prepareStatement(myQuery); 
      ){ 

      myPs.setString(1, employeeTf.getText()); 
      myPs.setString(2, departmentTf.getText()); 

      myPs.executeUpdate(); 

      System.out.print("Record is inserted"); 


     } catch (SQLException ex) { 
      DBUtilities.processException(ex); 
     } 
    } 
    } 

在这里,如果我插入一个新值,它会载入新值的数据库。

SELECT

private void searchBtnActionPerformed(java.awt.event.ActionEvent evt) { 
String searchEmployee = searchName.getText(); //SWING COMPONENTS 
String searchDept = searchDepartment.getText();//SWING COMPONENTS 

    String selectQuery = "SELECT EMPLOYEENAME,DEPARTMENT FROM SAMPLE WHERE USER_ID = ?"; 

    try { 
     Connection con = DBUtilities.getConnection(DBType.JDBC); 
     PreparedStatement myPs = con.prepareStatement(selectQuery,ResultSet.CONCUR_UPDATABLE,ResultSet.TYPE_SCROLL_INSENSITIVE); 

     ResultSet myRs = myPs.executeQuery(); 

     while(myRs.next()){ 
      String name = myRs.getString(1); 
      String department = myRs.getString(2); 
     } 

    } catch (SQLException ex) { 
     DBUtilities.processException(ex); 
    } 
    } 

SCREENSHOT

Screenshot

填写字段searchName后和searchDepartment文本框。正如你在这里看到的,我在这里点击“搜索”按钮。 我想searchName和searchDepartment的值将打印出employeeTf和departmentTf 的文本字段我怎么会在这里使用的setText?

+0

张贴您的摆动部件定义 – Musaddique

+0

已编辑摆动部件。谢谢。请再次检查我的帖子。 – Francisunoxx

回答

1
while(myRs.next()){ 
    String name = myRs.getString(1); 
    String department = myRs.getString(2); 
    nameText.setText(name); 
    deptText.setText(department); 
} 

我应该nameTextdeptText是swing文本组件

,如果这些都无法访问here..then您可以创建所有现场的对象和结果集将数据和返回对象和对象在那里使用。

+0

我为nameText和deptText创建了一个对象。当我尝试使用setText()时,它找不到符号?我错过了什么? – Francisunoxx

+0

发布摆动组件代码 – Musaddique

+0

已编辑。我只是使用拖放到此。出于示例目的。我知道我已经接近我的答案。 – Francisunoxx