Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] SQL Datei importieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • BlackScorp
    hat ein Thema erstellt [Erledigt] SQL Datei importieren.

    [Erledigt] SQL Datei importieren

    Hallo leute,

    ich habe mal ein kleines problem und weis nun echt nicht woran es liegt.

    Folgende Situation:
    Im PHPMyAdmin exportiere ich meine Tabellen mit inhalt (nichts umgestellt, ganz normale standard einstellungen). Der generierte Text wird in eine .sql Datei abgespeichert. Wenn ich eine neue Datenbank anlege und im PHPMyAdmin SQL Code ausführe, dann werden Tabellen angelegt und mit daten befüllt.

    Nun wollte ich das ganze gerne über PHP machen, dazu habe ich folgenden code verwendet:

    PHP-Code:
    if(file_exists('sql_test.sql')) {
                            
    $sql file_get_contents('sql_test.sql',FILE_TEXT);
                            
    mysql_query($sql) or die(mysql_error());
                            
    $content .= 'Datenbank Erfolgreich angelegt';
                        }else {
                            
    $content .= 'sql_test.sql Datei existiert nicht';
                        } 
    als fehlermeldung kriege ich immer ein Syntax Error , und zwar an der stelle, wo die Nächste tabelle erstellt werden sollte. also

    Code:
    CREATE TABLE{
    ID.....
    } ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;
    
    
    CREATE TABLE{ <---- und hier sollte der fehler sein
    ID ....
    } ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;
    wenn ich jeden create table befehl einzeln in eine datei schreibe, funktioniert das ganze einwandfrei. nur mit mehrere tabellen geht es nicht, woran könnte es denn liegen? Ich mein im PHP My Admin kann ich ja einfach eine datei mit copy&paste ausführen.

    Hoffe ihr wisst woran es liegen könnte

    MFG

  • BlackScorp
    antwortet
    hab es mit explode gelößt

    thx für eure hilfen

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Könnte das nicht mit LOAD DATA und LOCAL gehen?
    MySQL :: MySQL 5.0 Reference Manual :: 12.2.6 LOAD DATA INFILE Syntax
    MySQL :: MySQL 5.0 Reference Manual :: 5.3.5 Security Issues with LOAD DATA LOCAL

    Einen Kommentar schreiben:


  • BattleMaster246
    antwortet
    Also ich machs immer so:

    SQL Datei:

    Code:
    INSERT...
    #*#*# INSERT...
    PHP-Code:
    $var "xyz"# ausgelesene Datei
    $var explode("#*#*#",$var);
    foreach(
    $var as $arr)
    {
            
    mysql_query($arr);

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Damit wäre ich aber seeeehr vorsichtig... das dieses feature unsupported ist, wird Gründe haben...

    Einen Kommentar schreiben:


  • chorn
    antwortet
    Guck mal ins Manual zu mysql_query(), der ca. 5te Kommentar sollte dir helfen.

    Einen Kommentar schreiben:


  • BlackScorp
    antwortet
    oh ne.. sowas dummes. gibts da irgend eine alternative?
    ich könnte explode ; machen und das array durchgehen und mysql_query ausführen.

    wie wird das ganze in phpmyadmin gemacht?

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    mysql_query verarbeitet immer nur eine Anweisung gleichzeitig...

    Einen Kommentar schreiben:

Lädt...
X