Laravel,将表从一个数据库复制到另一个数据库

时间:2018-03-21 11:18:31

标签: laravel laravel-migrations

我正在从事SaaS项目。对于更多字段或更少字段的不同客户端请求,我相信它将有用而不是仅仅继续增长已经创建的表,将每个客户端可能确实增长的表划分为单独的数据库。为此,它将涉及将表重新创建为已设置的X连接,并创建一堆表使迁移变得非常大。

我的问题是,是否存在将表example_table从数据库A复制到数据库B的方法,使用正常迁移保留数据,或者如果我最好使用某些DBMS来制作模板。

1 个答案:

答案 0 :(得分:1)

您可以使用原始查询执行此操作

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use DB;

class MyNewTable extends Migration {

   /**
    * Run the migrations.
    *
    * @return void
    */
   public function up()
   {
       DB::statement('CREATE TABLE conection2.newtable LIKE system.oldtable; ');
   }


   /**
    * Reverse the migrations.
    *
    * @return void
    */
   public function down()
   {
       Schema::connection('conection2')->drop('newtable');
   }
}