M
Manuela
Gast
Hallo, ich habe ein Serverprogramm geschrieben das unter anderem auch Daten in eine Mysql Datenbank schreibt.
da mehrere Tabellen bei einer Insert bedient werden müßen benutze ich unten stehenden Code
kann ich das irgendwie vereinfachen weil ich befürchte das je größer die Tabelle wird um so länger wird die Verarbeitungszeit.
Beispiel: Ich habe Material das bestellt werden muß. Dafür habe ich eine Tabelle in dem die Daten sind, und eine Tabelle in der die Bestellungen eingetragen werden, und das ich die Daten wenn die bestellung eintrifft auch zuordnen kann benutze ich die autoincrement Spalte der Tabelle "bestand".
über ein Insert <Daten> in die Teile Tabelle und dann die Laufende Nr dieser Tabelle (LaufNr) benutze ich
um einen Insert <Bestelltabelle> mit der (LaufNr) zu finden.
ist meine Furcht unbegründet oder gibt es eine andere art dies zu bewerkstelligen.
das Serverprogramm bedient so ca 35 Clients
und da kommen schon eine menge Daten zusammen.
Gruß Manuela
da mehrere Tabellen bei einer Insert bedient werden müßen benutze ich unten stehenden Code
kann ich das irgendwie vereinfachen weil ich befürchte das je größer die Tabelle wird um so länger wird die Verarbeitungszeit.
Beispiel: Ich habe Material das bestellt werden muß. Dafür habe ich eine Tabelle in dem die Daten sind, und eine Tabelle in der die Bestellungen eingetragen werden, und das ich die Daten wenn die bestellung eintrifft auch zuordnen kann benutze ich die autoincrement Spalte der Tabelle "bestand".
über ein Insert <Daten> in die Teile Tabelle und dann die Laufende Nr dieser Tabelle (LaufNr) benutze ich
um einen Insert <Bestelltabelle> mit der (LaufNr) zu finden.
Code:
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
stmt.execute("INSERT INTO bestand (...) values(...) ); // hier befürchte ich das es immer länger dauert je mehr
Datensätze in der Tabelle sind.
res = stmt.executeQuery("Select * FROM bestand order by LaufNr");
res.last();
int NR=res.getInt(1);
res.close();
stmt.execute("INSERT INTO bestell(<laufende nr von bestand>,...) values(NR,...));
ist meine Furcht unbegründet oder gibt es eine andere art dies zu bewerkstelligen.
das Serverprogramm bedient so ca 35 Clients
und da kommen schon eine menge Daten zusammen.
Gruß Manuela