我的目的是如果值存在则更新,否则插入新行提交表单后在数据库表中。
问题是,这里的函数添加新列在数据库表中而不是更新它们。
这是我的功能:
MyModel::updateOrCreate(array(
'myField' => 'myValue',
))
->where('myAutoIncrementalField', '=', '5')
->where('myPrimaryKey', '=', '8');
我的数据库表是这样的:
1. myPrimaryKey(不是自动增量,可以在模型上填写。)
2. myAuto Incremental Field(自动增量,模型中不可填写)
先感谢您。
这是使用此方法的方式:
Model::updateOrCreate(
['primary_key' => 8],
['field' => 'value', 'another_field' => 'another value']
);
作为第一个参数,传递一组唯一的字段,或者在您的情况下,传递主键。显然,非唯一字段在这里没有意义,就像与 PK 一起传递任何内容一样。
第二个参数是也应该更新/创建的值数组,但在唯一/pk 搜索中被忽略。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)