Ist es möglich, eine .SQL-Datei in einer Migrationsklasse aufzurufen?Ist es möglich, eine .sql-Datei in einer Doktrin-Migration aufzurufen?
Ich konnte nichts zu diesem Thema finden.
Ist es möglich, eine .SQL-Datei in einer Migrationsklasse aufzurufen?Ist es möglich, eine .sql-Datei in einer Doktrin-Migration aufzurufen?
Ich konnte nichts zu diesem Thema finden.
Ja, einfach diese .SQL-Datei und verweisen Sie es von Ihrer Migrationsklasse.
Bezieht sich dies auf Doctrine 1.2? Ich kann diese Option nicht finden:/ –
Was ist, wenn SQL mehrere Abfragen durch Semikolon geteilt enthält? –
^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
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);
}
Was ist, wenn es '' 'in SQL-Abfrage gibt? Es ist möglicherweise nicht sicher. Kann sein "; \ n" sollte besser sein. – luchaninov
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
Ich glaube nicht, dass Sie können. Sie sollten es nach Ihrer Migration starten. Was enthält diese SQL-Datei? – j0k
es erstellt gespeicherte Prozeduren und Ansichten und es wird dynamisch erstellt – Hyperkubus