Hey ich bins schon wieder, ich versuch grad eine Methode zu entwickeln die den jTable in meine mysql speichert.
wie kann ich jetzt den jTable an speichern übergeben ?
Java:
package Auftrags;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
/**
*
* @author kp
*/
public class Speichern {
Connection con = null;
ResultSet rst = null;
PreparedStatement pst = null;
MainWindow m = new MainWindow();
public void S(){
try{
int rows=jTable.getRowCount();
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/meinedb","root","root123");
String delete ="DELETE FROM db.mytable";
pst = con.prepareStatement(delete);
pst.execute();
int b = 0;
int m = 0;
int f = 0;
int v = 0;
int af = 0;
for(int row = 0; row<rows; row++)
{
Integer auftragsnummer = (Integer)jTable.getValueAt(row, 0);
String auftragsdatum = (String)jTable.getValueAt(row, 1);
String auftraggeber = (String)jTable.getValueAt(row, 2);
String telefon = (String)jTable.getValueAt(row, 3);
String email = (String)jTable.getValueAt(row, 4);
String lieferadresse = (String)jTable.getValueAt(row, 5);
String beschreibung = (String) jTable.getValueAt(row, 6);
Integer menge = (Integer)jTable.getValueAt(row, 7);
Double preis = (Double)jTable.getValueAt(row, 8);
Double gesammtpreis = (Double)jTable.getValueAt(row, 9);
Boolean bezahlt = (Boolean)jTable.getValueAt(row, 10);
if (bezahlt == true){
b = 1;
}
Integer materialbestellzeit = (Integer)jTable.getValueAt(row, 11);
String materialbestellen = (String)jTable.getValueAt(row, 12);
Boolean materialbestellt = (Boolean)jTable.getValueAt(row, 13);
if (materialbestellt == true){
m = 1;
}
Integer fertigungszeit = (Integer)jTable.getValueAt(row, 14);
String fertigungsbeginn = (String)jTable.getValueAt(row, 15);
Boolean fertiggestellt = (Boolean)jTable.getValueAt(row, 16);
if (fertiggestellt == true){
f = 1;
}
Integer lieferzeit = (Integer)jTable.getValueAt(row, 17);
String versenden = (String)jTable.getValueAt(row, 18);
Boolean versendet = (Boolean)jTable.getValueAt(row, 19);
if (versendet == true){
v = 1;
}
String beimkunden = (String)jTable.getValueAt(row, 20);
Boolean auftragfertig = (Boolean)jTable.getValueAt(row, 21);
if (versendet == true){
af = 1;
}
String sql = "INSERT INTO db.mytable (auftragsnummer,auftragsdatum,auftraggeber,telefon, email,lieferadresse, beschreibung, "
+ "menge, preis, gesammtpreis, bezahlt,materialbestellzeit, materialbestellen, materialbestellt,fertigungszeit, fertigungsbeginn, fertiggestellt, "
+ "lieferzeit,versenden, versendet, beimkunden, auftragfertig) "
+ "VALUES ('"+auftragsnummer+"' ,'"+auftragsdatum+"','"+auftraggeber+"','"+telefon+"','"+email+"','"+lieferadresse+"','"+beschreibung+"',"
+ " '"+menge+"', '"+preis+"', '"+gesammtpreis+"', '"+b+"','"+materialbestellzeit+"', '"+materialbestellen+"',"
+ " '"+m+"','"+fertigungszeit+"','"+fertigungsbeginn+"', '"+f+"','"+lieferzeit+"', "
+ "'"+versenden+"', '"+v+"', '"+beimkunden+"','"+af+"' )";
pst = con.prepareStatement(sql);
pst.execute();
}
JOptionPane.showMessageDialog(null, "Erfolgreich gespeichert");
}
catch(Exception e){
}
}
}
wie kann ich jetzt den jTable an speichern übergeben ?
Zuletzt bearbeitet: