Laravel尝试将数据写入错误的SQL表

时间:2018-01-05 10:32:10

标签: php mysql laravel

我正在编写一个工匠命令,用于扫描 .csv 文件并将其写入 MySQL数据库

每个新文件,我都用新表名重写Record模型

<?php 
    namespace App; 
    use Illuminate\Database\Eloquent\Model; 
    class Record extends Model { 
    protected $guarded = []; 
    protected $table = 'adjustments';
}

但是当我执行命令时,Laravel会尝试将新Record的数据写入旧表中。

我犯了哪个错误?

2 个答案:

答案 0 :(得分:0)

检查.env和config / database.php,您可能忘记更改为新数据库

答案 1 :(得分:0)

为什么你不能在模型中使用Schema::rename(),如下所示

Schema::rename('records', 'adjustments');

如果你想在模型以外的地方做这个,请参见下面的方法:\

$product = new Record;
$product->getTable(); // products
$product->setTable('adjustments');

这个将创建新表:

Schema::connection('mysql')->create('adjustments', function($table)
{
    $table->increments('id');
    $table->timestamps();
});