使用 XXModel::query()->updateOrCreate() 查询语句提示未找到 id 列?
使用updateOrCreate
查询:
当数据库不存在指定数据时,并不会报错,且会准确的插入数据;
当数据库存在指定数据时,抛出了这个异常,且数据并不会被修改:
Migration 文件:
经过发现,在Model
文件中修改protected $primaryKey = ''
的值为已有列名(email、code)就不会报错,改为其他的字符或者保持默认的$primaryKey="id"
值就会报错。
Migration
文件中并未加入主键,出现这个问题是什么原因?
如何在没有主键的情况下使用updateOrCreate()
方法才不会出现这种异常?
@long0 回答的你的第二个问题~
源码大法好!