Thread SQL Statement aus Text Datei lesen (3 answers)
Opened by tophoven at 2008-03-22 21:01

murphy
 2008-03-23 00:50
#107387 #107387
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Naja, im Prinzip musst Du lediglich eine Verbindung zur Datenbank herstellen und dann nacheinander alle SQL-Statements abschicken. Das Problem ist nur, dass man eine Datei nicht so einfach statementweise einlesen kann, wenn die Befehle schon mal mehrere Zeilen lang sein können.

Ein einfacher Versuch wäre vielleicht
Code (perl): (dl )
1
2
3
4
5
6
use DBI;

my $dbh = DBI->connect('DBI:mysql:database=foobar', 'nobody', 'secret password');
{ local $/ = ';'; while (my $sql = <>) {
  $dbh->do($sql);
} }


Das verlässt sich aber darauf, dass niemand auf die dumme Idee gekommen ist, in der Datei einen Kommentar mit einem ';' darin zu platzieren ;-) Eigentlich müsste man die Datei richtig parsen...

edit: renees Variante die Befehle durch 2 Zeilenumbrüche zu trennen sieht auch sehr sinnvoll aus!
When C++ is your hammer, every problem looks like your thumb.

View full thread SQL Statement aus Text Datei lesen