我想批量操作数据库更新一下相关字段的值,如果数据不存在就插入,存在就更新字段,使用了model下的方法,却提示未定义。 Call to undefined method app\statistics\model\AverageModel::upsert() 这里详细描述问题 我的使用代码 系统的model下 看model下面是有这个方法的,但是使用不了,请问怎么使用? 或者有没有替换的方法,数据量有好几千,不想使用foreach来执行,请教各位大佬有没有好办法。
默认Eloquent ORM, 看他的文档吧,用ThinkORM就去看ThinkORM的
嗯,你说的有道理,但是没找着,大佬有相关提示一下下??
用哪个库就去找谁的官网文档,这不是基操嘛
Eloquent ORM用的是:updateOrCreate();
使用 updateOrCreate 只能单个处理,而且还需要使用条件来更新,不是我想要的结果
@zz1000 你的想法很好,不过回复的时候,先自己看看基操是不是真的有,文档有的谁不会看。
截Model的代码,extends了哪些
感谢各位的大佬的意见,谢谢,谢谢,谢谢。。
应该是 illuminate/database 版本太低了,如果是 illuminate/database v7 或者以下就不支持upsert。 大于v8才支持upsert, 现在 illuminate/database 都是v11了
感谢大佬的意见,这个是正确的答案 。我使用的版本刚好卡在 v7.30.* ,没有找到,我更新版本库后,找到了upsert 这个方法 。谢谢,谢谢,谢谢。。。
感谢楼上的大佬的意见,是版本的问题。 新修改后, , 最后查看的到的方法, ; 最后谢谢各位大佬的宝贵意见,感谢一大波bug。。。。
默认Eloquent ORM, 看他的文档吧,用ThinkORM就去看ThinkORM的
嗯,你说的有道理,但是没找着,大佬有相关提示一下下??
用哪个库就去找谁的官网文档,这不是基操嘛
Eloquent ORM用的是:updateOrCreate();
使用 updateOrCreate 只能单个处理,而且还需要使用条件来更新,不是我想要的结果
@zz1000 你的想法很好,不过回复的时候,先自己看看基操是不是真的有,文档有的谁不会看。
截Model的代码,extends了哪些
感谢各位的大佬的意见,谢谢,谢谢,谢谢。。
应该是 illuminate/database 版本太低了,如果是 illuminate/database v7 或者以下就不支持upsert。
大于v8才支持upsert, 现在 illuminate/database 都是v11了
感谢大佬的意见,这个是正确的答案 。我使用的版本刚好卡在 v7.30.* ,没有找到,我更新版本库后,找到了upsert 这个方法 。谢谢,谢谢,谢谢。。。
感谢楼上的大佬的意见,是版本的问题。

,
;
新修改后,
最后查看的到的方法,
最后谢谢各位大佬的宝贵意见,感谢一大波bug。。。。