当我们需要执行原始SQL语句时,可以使用 DB::unprepared
这个方法。
比如在 DatabaseSeeder 中需要插入大量预先从数据中导出的数据时,写PHP进行插入就不太现实,可以将数据导出成一个sql
文件,然后:
<?php
use Illuminate\Database\Seeder;
class AdminTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
\DB::unprepared(file_get_contents(__DIR__ . '/seed.sql'));
}
}