2列のjtableがあり、その値をデータベースに挿入したい。
私はそれが..のようなもので行うことができることを知っています。
int count=table.getRowCount();
for(int i=0;i<count;i++){
Object obj1 = table.getValueAt(i, 0);
Object obj2 = table.getValueAt(i, 1);
問題は..getRowCountは行が空であるかどうかを認識しないため、データベースではその空の値が挿入されたままになります(そして、データベースに自動増分値が生成されます)
jtableからデータベースを挿入する方法についての私の質問ですが、空の行は挿入されませんか?
どんな種類の助けにも感謝します、、
質問が多すぎる場合は、空の行を処理するための手がかりを教えてください。
私の英語を許してください
これがデータベースにデータを追加するための壊れた方法です
public void addToDatabase(){
for (int i=0;i<table.getRowCount();i++){
//#####################################
//maybe need something in here
if(table.getValueAt(i, 0)==null||table.getValueAt(i, 1) ==null){
return;
//and maybe need something not return, but to get the next row (Just.. maybe ...)
//#####################################
}else{
try{
Connection c = getCon("databasez");
PreparedStatement p = c.prepareStatement("INSERT INTO table_data VALUES (?,?)");
p.setString(1, table.getValueAt(i, 0).toString());
p.setFloat (Float.parseFloat(table.getValueAt(i, 1).toString()));
p.executeUpdate();
p.close();
}catch(Exception e){
JOptionPane.showMessageDialog(this, "THERE WAS AN INVALID DATA");
}
}
}
}