mehrer Einträge gleichzeitig in eine DB
Andreas
- php
Hallo
beim erfasssen von Daten in die DB wird anhand eines Formular immer ein Datensatz erfasst und ein Datensatz in die DB geschriebn.
jetzt möchte ich aber das ich ein Formular erstelle und statt
1 Eintrag
jetzt
10 Einträge erfassen
und diese dann beim senden alle in die DB schreiben.
(kein IMPORT einer textdatei)
Grund:
Termintabelle von ca 10 bis 30 Einträgen
geht das und wenn ja wie?
Danke
Andreas
Hallo Andreas,
statt 1 Eintrag jetzt 10 Einträge erfassen
und diese dann beim senden alle in die DB schreiben.
(kein IMPORT einer textdatei)
geht das und wenn ja wie?
Mit einer INSERT-Anweisung nicht, aber was hindert Dich daran mit einer Schleife eine entsprechende Anzahl von INSERT-Anweisungen zu erzeugen und ausführen zu lassen?
Die INSERT-Syntax findest Du im MySQL-Handbuch unter http://dev.mysql.com/doc/mysql/en/INSERT.html
Freundliche Grüsse,
Vinzenz
Danke problem ist gelöst
http://www.toter-link.de/php/temp2.php
Hello,
statt 1 Eintrag jetzt 10 Einträge erfassen
und diese dann beim senden alle in die DB schreiben.
(kein IMPORT einer textdatei)
geht das und wenn ja wie?Mit einer INSERT-Anweisung nicht, aber was hindert Dich daran mit einer Schleife eine entsprechende Anzahl von INSERT-Anweisungen zu erzeugen und ausführen zu lassen?
INSERT INTO tbl_name (col_name_1,col_name_2,...,col_name_n)
VALUES (val_1.1,val_1.2,...,val_1.n),(val_2.1,val_2.2,...,val_2.n),...
So kann man in mySQL mehrere Sätze "gleichzeitig" eintragen, also mit einem einzigen Insert-Statement. Da es aber noch keine Transaktionen gibt, sollte man sich aber vorher darüber klar machen, was bei einem Fehler (z.B. abgelehnte Dublette) passiert.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Danke Tom,
INSERT INTO tbl_name (col_name_1,col_name_2,...,col_name_n)
VALUES (val_1.1,val_1.2,...,val_1.n),(val_2.1,val_2.2,...,val_2.n),...
Wieder etwas gelernt. Ich hätte meine Quelle selbst genauer durchlesen sollen, dann wäre ich auch auf den Satz:
<zitat>
The INSERT ... VALUES form with multiple value lists is supported in MySQL 3.22.5 or later.
</zitat>
gestoßen.
So kann man in mySQL mehrere Sätze "gleichzeitig" eintragen, also mit einem einzigen Insert-Statement. Da es aber noch keine Transaktionen gibt, sollte man sich aber vorher darüber klar machen, was bei einem Fehler (z.B. abgelehnte Dublette) passiert.
Das ist sowohl richtig als auch wichtig, immerhin hat MySQL (ab 4.1.0) die Klausel ON DUPLICATE KEY UPDATE dafür vorgesehen.
Freundliche Grüsse,
Vinzenz