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

时间:2014-05-25 13:49:32

标签: mysql database laravel

我正在使用Laravel 4来构建一个使用大量mysql数据库的站点,其中每个数据库都有多个表。数据库的结构和组织不在我的掌控之中。

我需要能够在运行时从另一个数据库中的一个数据库复制一个表(源数据库和目标数据库(并且源数据库中的特定表依赖于用户做出的选择)。

使用mysql很容易复制表:

CREATE TABLE database2.new_table LIKE database1.original_table;
INSERT INTO database2.new_table SELECT * FROM database1.original_table;

但我无法弄清楚如何使用Laravel。

我可以通过创建自己的连接(' mysql1'以及' mysql2')轻松访问每个数据库但我无法弄清楚如何构建语句以使用它们。以下不起作用

$success = DB::connection('mysql2')->statement('CREATE TABLE new_table LIKE database1.original_table);

因为我试图直接访问database1而不使用' mysql1'连接,并且Laravel生成错误,指出database1.original_table不存在。

我觉得解决方案应该是显而易见的,但是没有足够的经验与Laravel解决这个问题。任何指导都将不胜感激。

0 个答案:

没有答案