2012-11-23 17 views

Antwort

11

Ja, einfach diese .SQL-Datei und verweisen Sie es von Ihrer Migrationsklasse.

+1

Bezieht sich dies auf Doctrine 1.2? Ich kann diese Option nicht finden:/ –

+1

Was ist, wenn SQL mehrere Abfragen durch Semikolon geteilt enthält? –

+0

^Es funktioniert mit mehreren Abfragen getrennt durch Semikolons in der enthaltenen SQL-Datei (zumindest in Symfony 3.x; höchstwahrscheinlich funktioniert auch in Symfony 2.8 + ... einfach ausprobieren). – Sawant

0

Ich weiß, es ist eine alte Frage, aber es ist immer noch der einzige echte Hit, wenn ich dafür googelte. Die obige Antwort kann leicht verbessert werden. Es ist eine einfache Sache, aber Sie könnten nicht daran denken. Wenn Sie eine SQL-Datei mit mehreren Abfragen haben, die durch ein Semikolon getrennt sind, können Sie den Inhalt in Semikolon auflösen.

<?php 

foreach (explode(';', file_get_contents(__DIR__ . '/sql-dump.sql')) as $sql) { 
    $this->addSql($sql); 
} 
+1

Was ist, wenn es '' 'in SQL-Abfrage gibt? Es ist möglicherweise nicht sicher. Kann sein "; \ n" sollte besser sein. – luchaninov

+0

Dies ist nicht notwendig, da dies ('$ this-> addSql (file_get_contents (__ DIR__. '/sql-dump.sql'));') im Falle mehrerer Abfragen, die durch Semikolons getrennt sind, funktioniert. – Sawant