Java 是否向JTable和数据库(phpMyAdmin)添加一行? initComponents(); 试一试{ ResultSet res=statement.executeQuery(“SELECT*FROM banh”); ResultSetMetaData RSMD=res.getMetaData(); NumberOfColumns=RSMD.getColumnCount(); AttributeName=新字符串[NumberOfColumns]; 对于(int i=0;i

Java 是否向JTable和数据库(phpMyAdmin)添加一行? initComponents(); 试一试{ ResultSet res=statement.executeQuery(“SELECT*FROM banh”); ResultSetMetaData RSMD=res.getMetaData(); NumberOfColumns=RSMD.getColumnCount(); AttributeName=新字符串[NumberOfColumns]; 对于(int i=0;i,java,phpmyadmin,Java,Phpmyadmin,,这是一个不好的例子: 变量名不应以大写字符开头 硬编码数组大小以支持10000行是错误的方法。您也可以使用动态向量 相反,请从中找到的数据库示例中查看表。此示例使用的向量将根据结果集中找到的行数而增长 我不知道如何将行添加到JTable和数据库中 您可以使用DefaultTableModel的addRow(…)方法动态添加数据。请阅读API或搜索论坛/网站,以查找使用addRow(…)方法的示例 对于数据库插入,可以从上的教程开始 initComponents(); try {

,这是一个不好的例子:

  • 变量名不应以大写字符开头
  • 硬编码数组大小以支持10000行是错误的方法。您也可以使用动态向量
  • 相反,请从中找到的数据库示例中查看
    表。此示例使用的向量将根据结果集中找到的行数而增长

    我不知道如何将行添加到JTable和数据库中

  • 您可以使用
    DefaultTableModel
    addRow(…)
    方法动态添加数据。请阅读API或搜索论坛/网站,以查找使用addRow(…)方法的示例

  • 对于数据库插入,可以从上的教程开始

  • initComponents(); 
    try {
            ResultSet res = statement.executeQuery("SELECT * FROM banh");
            ResultSetMetaData RSMD = res.getMetaData();
            NumberOfColumns = RSMD.getColumnCount();
            AttributeNames = new String[NumberOfColumns];
            for(int i=0;i<NumberOfColumns;i++)
                AttributeNames[i]=RSMD.getColumnName(i+1);
            MyArray=new Object[10000][NumberOfColumns];
            int R=0;
            while(res.next()) {
                for(int C=1; C<=NumberOfColumns;C++)
                    MyArray[R][C-1]=res.getObject(C);
                R++;
            }
            res.close();
            NumberOfRows=R;
            Object[][] TempArray=MyArray;
            MyArray=new Object[NumberOfRows][NumberOfColumns];
            for(R=0;R<NumberOfRows;R++)
                for(int C=0;C<NumberOfColumns;C++)
                    MyArray[R][C]=TempArray[R][C];
            TableData.setModel(new MyTableModel());
            TableData.setVisible(true);
        }      
        catch(Exception e) 
        {
            e.printStackTrace();
        }
    public void initComponents() 
    {             
        model = new DefaultTableModel (new Object [][] 
            {
                {null},
                {null},
                {null},
                {null}
            },
            new String [] {""}
            ) {
              Class[] types = new Class [] {java.lang.Object.class};
              boolean[]canEdit=new boolean[]{false};
    
              public Class getColumnClass(int columnIndex) 
              {
                    return types [columnIndex];
              }
              public boolean isCellEditable(int rowIndex, int columnIndex) 
              {
                    return canEdit [columnIndex];
              }
        };
        TableData.setModel(model);
        JScrollPane ScrollPane1 = new JScrollPane(TableData); 
        ScrollPane1.setBounds(30,170,950,290);
        Frame.add(ScrollPane1,BorderLayout.CENTER);
    }