Andreas: mehrer Einträge gleichzeitig in eine DB

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

  1. 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

    1. Danke problem ist gelöst

      http://www.toter-link.de/php/temp2.php

    2. 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

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. 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