sql >> Database >  >> RDS >> Mysql

Is er een Laravel-manier om een ​​.SQL-bestand uit te voeren om gegevens te laden?

Er is geen manier om een ​​DB-dump out-of-the-box te importeren met artisan . U kunt echter een aangepaste artisan . maken commando:

php artisan make:console DbImportCommand

en laat het dan een commando geven zoals:

DB::unprepared(file_get_contents('full/path/to/dump.sql'));

Het kan echter voordelig zijn om een ​​opdracht te maken waarmee een seeder (of een set seeders) wordt uitgevoerd.

php artisan make:console importHistoricalData

en laat die vervolgens specifieke seeders uitvoeren:

$this->call(OldCompanySeeder::class);
$this->call(OldEmployeeSeeder::class);
// etc....

Als u de database op een bepaald moment wist of naar een nieuwe omgeving gaat, is het net zo eenvoudig als het opnieuw uitvoeren van de seeders.




  1. 3 gebieden die baat zullen hebben bij het gebruik van een SQL Server Performance Monitoring Tool

  2. Oracle SQL-volgorde in subquery-problemen!

  3. Slaapstand codeert verkeerd tijdens persistente objecten [UTF-8]

  4. @@ERROR en/of TRY - CATCH