laravel-4

Use Laravel seed and sql files to populate database


I got several .sql files of countries, states and cities of the world from github. How can I run them with Laravel's seed files to populate those tables in my database?


Solution

    1. Add DB::unprepared() to the run method of DatabaseSeeder.
    2. Run php artisan db:seed at the command line.

      class DatabaseSeeder extends Seeder {
      
          public function run()
          {
              Eloquent::unguard();
      
              $this->call('UserTableSeeder');
              $this->command->info('User table seeded!');
      
              $path = 'app/developer_docs/countries.sql';
              DB::unprepared(file_get_contents($path));
              $this->command->info('Country table seeded!');
          }
      }