
最佳答案

讨论数量:
$old = config('database.connections.mysql');
$old['database'] = 'home_old'; // 伪造一个旧的数据库配置
// 相当于在 config/database.php添加一个 'old' 的配置
app('config')->set('database.connections.old',$old);
DB::connection('old')->table('users')->chunk(100, function ($old_users){
foreach($old_users as $old_users)
DB::table('users')-> // ... 新数据库逻辑操作
});
试试这个思路,从 SELECT 结果中创建新表,字段别名是新表中的字段,如果新表字段与老表字段相同则不需要给字段起别名。如果全量复制则不需要 WHERE。
不同数据库导出导入会吧。
CREATE TABLE IF NOT EXISTS table_name
SELECT 字段1 别名,字段2 别名......FROM database_name.table_name WHERE......
如果表已存在。
INSERT INTO table_name(字段1,字段2......) SELECT 字段1,字段2...... FROM database_name.table_name WHERE......