dongsaolian8786
2017-09-20 19:16 阅读 59
已采纳

如何在laravel迁移文件中使用许多数据库模式?

I'm trying to separate my tables into different schemas while writing migration files with Laravel.

I was wondering what's the best approach to do it. Currently, the table creation goes like:

 Schema::create('schema_name.table_name', function (Blueprint $table) {
        $table->increments('id');
        (...)
    });

Should I try to use a different connection, another option or it's ok like this?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • 已采纳
    douzhenzu0247 douzhenzu0247 2017-09-20 19:22

    try this

    first in config/database.php add another connection

    'connections' => [
        'mysql' => [...],
    
        'mysql1' => [
                'driver' => 'mysql',
                'host' => env('DB_HOST', 'localhost'),
                'port' => env('DB_PORT', '3306'),
                'database' => env('DB_DATABASE_NAME', 'forge'),
                'username' => env('DB_USERNAME', 'forge'),
                'password' => env('DB_PASSWORD', ''),
                'charset' => 'utf8',
                'collation' => 'utf8_unicode_ci',
                'prefix' => '',
                'strict' => false,
                'engine' => null,
            ],
    
          ...
    ]
    

    Then in migration

    Schema::connection('mysql1')->create('table_name', function (Blueprint $table) {
        $table->increments('id');
        (...)
    });
    
    点赞 评论 复制链接分享

相关推荐