Christl Geschrieben 8. April 2003 Teilen Geschrieben 8. April 2003 Hallo Zusammen, ich versuche gerade, eine MySQL-Datenbank zu aktualisieren, das Ganze automatisiert. Dazu möchte ich eine *.bat-Datei schreiben, aber leider stosse ich da auf Probleme. Es gelingt mir zwar, MySQL im Befehlszeilenmodus aufzurufen, aber es führt die Befehle nicht so aus, wie ich es will... Beispiel: Ich importiere mit MySQL-Front eine Textdatei in die Datenbank. Funktioniert.Passt. Wenn ich aber dieses SQL-Statement kopiere und im Befehlszeielenmodus ausführen will, sagt er mir, dass diese Version diesen Befehl nicht unterstützt. Kann das sein?? (Konkret: LOAD DATA LOCAL INFILE 'C:/test.txt' INTO TABLE passwd.webadrdaten_1 FIELDS TERMINATED BY ';' LINES TERMINATED BY ';' (Ad....)) Des weiteren muss ich immer alle Daten vorher löschen, sonst hab ich die Datensätze doppelt. Wenn ich dagegen REPLACE mit benutze, fügt er neue Datensätze nicht an, sondern tauscht nur die bereits vorhandenen aus. Bei IGNORE aktualisiert er nur die neuen Datensätze, wenn sich bei den alten was geändert hat..Pech gehabt. Hat jemand von Euch eine Idee dazu? Ich muss auch noch ausprobieren, ob das mit einer *.bat-Datei so einfach geht, vielleicht hat dazu auch jemand eine Idee.. Muss ich da vorher MySQL aufrufen und dann wieder schliessen? Oder lässt sich das SQL-Statenment einfach so ausführen? Was ist mit zwischenzeitlichen Zugriffen auf die Datenbank? Wäre schön, wenn Ihr mir da einen Gedankenanstoss geben könntet.. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Atreju Geschrieben 8. April 2003 Teilen Geschrieben 8. April 2003 Hallo, du solltest dazu mysqladmin verwenden. Die SQL Statements packst du in eine sql Datei, z. B. test.sql in der Batch Datei rufst du dann folgendes auf. mysqladmin -u benutzername -p passwort <test.sql Cu Atreju Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Christl Geschrieben 10. April 2003 Autor Teilen Geschrieben 10. April 2003 Danke für den Tipp! Nach ein paar anfänglichen Problemen in der Syntax (beispielsweise muß ein Slash anstelle eines Back-Slash'es stehen -> im Gegensatz zur Doku) funzioniert das Ganze auch ziemlich prächtig. Ein noch grösserer Vorteil als dass ich das ganze nun als geplanten Task regelmässig automatisch ausführen kann, ist, dass der Import einer Textdatei in diesem "Modus" wesentlich schneller abläuft, als wenn ich die ganze Sache über eine ADO-Datenbankverbindung realisiere und da Daten importiere.... Und mit dem kleinen Zusatz "LOW_PRIORITY" hab ich nun auch keine Probleme mehr mit gleichzeitigen Zugriffen der User.... :marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.