laravel实现批量添加数据

laravel实现批量添加数据

在使用laravel eloquent进行数据库操作的时候惊讶的发现这货居然不支持批量添加,看到网上很多人在循环里进行数据库插入操作来实现批量添加,我想说这样做是很损失性能滴!好在框架的DB门面里的insert方法可以进行批量插入。代码如下:

$data= [ ['name'=>'111'], ['name'=>'222'], ]; DB::table('xxx')->insert($data); 

但这样有个问题就是表名每次都要手动来输入。而我们一般情况下是在模型中进行数据库操作,并且会封装一些必要的方法到一个基类上。好在laravel模型为我们提供了一个getTable()方法可以得到当前模型的表名。这样我们就可以把批量操作放入一个公有的方法中去。代码如下:

class BaseModel extend Model { public function addAll(Array $data) { $rs = DB::table($this->getTable())->insert($data); return $rs; } } class User extend BaseModel { } //使用时 $user = new User(); $data= [ ['name'=>'111'], ['name'=>'222'], ]; $user->addAll($data);

链接:https://www.jianshu.com/p/b4b08a5a43fe

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112388.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JAVA Applet小应用程序入门

    JAVA Applet小应用程序入门1.Applet如何运行不同于java应用程序,运行applet需要在对应html文件通过<applet>指定applet程序名,即可在浏览器中运行.2.Applet如何编写我的工具是eclipse。新建一个类该类必须是public且继承Applet。文件名与类名一样3.Applet类中方法的执行顺序与生命周期先执行构造方法 再执行init()进行一些数…

    2022年7月8日
    21
  • C++ ffmpeg+dxva2实现硬解码「建议收藏」

    C++ ffmpeg+dxva2实现硬解码「建议收藏」0.前言参考博客:ffmpeg实现dxva2硬件加速下载源码:GitHub:https://github.com/Yacov-lu/ffmpeg-DXVA-decode百度网盘:https://pan.baidu.com/s/1fFm4Ra5ka2bPJeIRig14wA?pwd=qwer提取码:qwer该源码下载后,将播放的视频路径(filename)修改为你自己的,便可直接运行。1…

    2025年5月27日
    0
  • getClassLoader能否为null

    getClassLoader能否为null前言我们Javaer都知道类想要被加载是需要一个个ClassLoader来执行的,并且类加载的方案叫双亲委派模式,说是双亲,其实就是单亲,可能我们最初的翻译人想让我们的加载器的家庭更完整吧,所以翻译成双亲。默认的类加载器包括BootstrapClassLoader、ExtClassLoader、AppClassLoader,他们都定义在在rt.jar中的sun….

    2022年5月9日
    32
  • pycharm远程调试python_pycharm怎么运行一个项目文件

    pycharm远程调试python_pycharm怎么运行一个项目文件pycharm远程开发项目的实现步骤你是不是在学习python的时候在使用虚拟机系统进行开发,来回切换很是不方便,那么今天给大家推荐一个pycharm强大的功能。接下来我们利用这个django项目创建一个子app,测验一下是否真的能如此操作python@ubuntu:~/Desktop/Remote_Django$pythonmanage.pystartappusers很完美!,接下来告诉…

    2022年8月26日
    2
  • 变电站后台监控系统[通俗易懂]

    变电站后台监控系统[通俗易懂]变电站后台监控系统实现对35KV变电站的主要设备和输、配电线路的自动监视、测量、自动控制和微机保护,以及与调度通信等综合性的自动化功能。实现对电网运行的实时监控,使值班人员和系统调度人员通过管理平台及时把握系统的运行状态和事故处理的主动性,另外配套的手机客户端软件实现了移动终端功能,可随时随地查看或管理电网,提高电网的自动化管理水平、供电质量。为达到这一目的,满足电网运行对变电站后台监控系统的要求,变电站综合电力自动化系统体系由“数据采集和控制”、“继电保护”、“直流电源系统”三大块构成变电站自动化基础。

    2022年7月25日
    11
  • mytop安装,使用mytop监控MySQL性能 (总结)

    mytop安装,使用mytop监控MySQL性能 (总结)

    2021年10月29日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号