插入,更新,删除具有mysql数据的jtable行

时间:2014-01-30 18:27:44

标签: java mysql sql jtable

此类显示了mysql中的表的员工列表,它的工作原理是,我想以这种方式动态插入或更新或删除:

  1. JTable具有选择特定行中单元格的功能,只需用鼠标光标单击它,
  2. 我想利用这个事实删除值并在更新的情况下插入另一个,或删除整行,如果删除,或插入新行,
  3. 一旦制作完所有这些操作都将保存在数据库表中。我可以做我刚才描述的事情吗?
  4. import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import javax.swing.JFrame;
    import javax.swing.JTable;
    import DataBaseConnectionSingleton.Connection;
    import DataBaseConnectionSingleton.CreationStatement;
    import net.proteanit.sql.DbUtils;
    
    public class ShowEmployee {
    
    public JFrame frame=new JFrame();
    JTable Table = new JTable();
    JButton b = new JButton();
    
    public ShowEmployee() {
        showEmployee();
    }
    
    public void showEmployee() {
    
        try {
            Connection.getConnectionInstance();
            Statement st = CreationStatement.getCreationStatementInstance();
            ResultSet rs = st.executeQuery("select * from employee");
            frame.getContentPane().setLayout(null);
            Table.setBounds(0, 0, 405, 361);
            Table.setModel(DbUtils.resultSetToTableModel(rs));
            Table.setAutoCreateRowSorter(true);
            frame.getContentPane().add(Table);
            frame.setTitle("EMPLOYEES'S LIST");
            frame.setSize(650,400);
            frame.setLocation(265,10);
            frame.setVisible(true);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        new ShowEmployee();
     }
    }
    

1 个答案:

答案 0 :(得分:1)

是的,你可以。 我不是很好,但你可以做到这一点。将会有很多工作,实现大量的监听器,更改和重新加载表模型,在数据更改后重新绘制表格......非常困难。 但是当你说“删除值并在更新的情况下插入另一个,或删除整行,如果删除,或插入新行”我明白这不会通过“单击一个单元格”来完成。您应该对该行实施更多控制,以了解您是要删除它还是在上方/下方插入一个以及所需的所有操作。 希望这对你有所帮助,因为你刚才问你是否可以这样做。 你认为在单元clik上更容易在桌面上打开一个新框架并编辑行吗?