2012-03-19 3 views
1

제 GUI에 jtable이 있습니다. (tableRealProperty). 테이블 내부의 데이터를 추가, 삭제 및 업데이트해야합니다. 이 데이터는 ClientID라는 기본 키가있는 데이터베이스의 데이터입니다. jtable의 열은 "Location"과 "Area"입니다. jtable에서 특정 행을 선택하면 해당 행뿐만 아니라 데이터베이스에서도 삭제되어야합니다. 내 문제는 내가 내 삭제 버튼을 클릭하면,뿐만 아니라 선택된 행이 삭제되어 있다는 것입니다하지만 특정 클라이언트의 표 내부의 모든 데이터가 .. jtable의 선택된 행을 삭제할 때 SQL 쿼리를 작성하는 방법은 무엇입니까?

여기 삭제에 대한 내 코드입니다 :

private void cmdDelRPropActionPerformed(java.awt.event.ActionEvent evt) {            
String sql = "delete FROM tblrealProperty where tblrealproperty.ClientID = ?"; 

    try { 
    pst = conn.prepareStatement(sql); 
    pst.setString(1, txtClientID.getText()); 
    ((DefaultTableModel)tableRealProperty.getModel()).removeRow(tableRealProperty.getSelectedRow()); 
    pst.execute(); 
    JOptionPane.showMessageDialog(null, "Deleted"); 


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

} 
+0

테이블 이름이'tblrealProperty'이고 where 절의 테이블 이름이'tblRealProperty' (대문자 R) 인 이유가 있습니까? –

+0

그것은 단지 동일합니다. – zairahCS

답변

1

jtable에서 특정 행을 선택하면 데이터베이스에서 물론 으로 삭제해야합니다. 내 문제는 당신이 외국 키를 가지고있는 것처럼 때이 소리 내 삭제 버튼뿐만 아니라 선택된 행이 삭제뿐만 아니라 모든 그 특정 클라이언트의 테이블 내부의 데이터 ..

을 클릭이다 tblrealproperty는 계단식 삭제를 사용하여 클라이언트 테이블에 설정됩니다. 즉, 클라이언트가 tblrealproperty에서 삭제되면 tblrealproperty의 삭제 된 행을 가리키는 외래 키가있는 모든 해당 데이터도 삭제됩니다. 불일치를 방지하기위한 DB 내부의 노력입니다.

+0

ON DELETE : restrict로 설정하지만 테이블의 모든 행은 삭제됩니다. – zairahCS

+0

우리는 하나의 테이블 또는 하나 이상의 테이블에 대해 이야기하고 있습니까? 행을 삭제하면 해당 행의 행보다 더 많은 행이나 다른 테이블의 행이 삭제됩니다. –

+0

테이블이 하나만 있습니다. 외래 키에 대한 아이디어를 가져 주셔서 감사합니다. 도움이되었습니다. 고맙습니다. :) – zairahCS

1

이 쿼리는 특정 ClientID가있는 모든 행을 확실히 삭제합니다. 데이터베이스의 테이블에 다른 열을 추가해야합니다. "인덱스"는 테이블의 각 행마다 고유해야합니다. 다음이 인덱스 행을 삭제합니다

`delete FROM tblrealProperty where tblrealproperty.index = ?` 
+0

나는 당신이 나에게 준 코드를 만들었지 만 선택된 행은 GUI에서만 삭제되었지만 데이터베이스에서는 삭제되지 않았다. 내가 GUI를 새로 고칠 때 삭제 된 행이 있어야합니다. – zairahCS

+0

어떻게하면됩니까? – zairahCS

0

날이 완벽하게 작동를 들어, txtClientID가 데이터베이스에 autoincrementindex 있는지 확인하는 것을 잊지 마세요. 표의 문자가 txtClientID 인 경우 삭제 명령은 모두 txtClientID 인 모든 행을 삭제합니다.

관련 문제