sql >> Base de Datos >  >> RDS >> Mysql

¿Hay alguna forma de Laravel para ejecutar un archivo .SQL para cargar datos?

No hay forma de importar un volcado de base de datos listo para usar usando artisan . Sin embargo, podrías crear un artisan personalizado comando:

php artisan make:console DbImportCommand

y luego haz que emita un comando como:

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

Sin embargo, puede resultar ventajoso crear un comando que ejecute un sembrador (o un conjunto de sembradores).

php artisan make:console importHistoricalData

y luego hacer que ejecute seeders específicos:

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

Si borra la base de datos en algún momento o se cambia a un nuevo entorno, es tan simple como volver a ejecutar las sembradoras.