05 tp6 的数据添加 助手函数、 save、insert、strict、replace、insertGetId、insertAll《ThinkPHP6 入门到电商实战》

文章目录(更新中…)

01 thinkphp6的前期开发准备《ThinkPHP6 入门到电商实战》
02 控制器《ThinkPHP6 入门到电商实战》
03 数据库查询、模型查询、多库查询《ThinkPHP6 入门到电商实战》
04 tp6 的查数据《ThinkPHP6 入门到电商实战》
05 tp6 的数据添加《ThinkPHP6 入门到电商实战》
06 tp6 的数据更新(改)及删除 《ThinkPHP6 入门到电商实战》
07查询表达式 及 page分页、order 排序《ThinkPHP6 入门到电商实战》
08 获取器 withAttr、多连缀、whereRaw、事务、数据集《ThinkPHP6 入门到电商实战》

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我,若你是真心学习可以送你书籍,指导你学习,给予你目标方向的学习路线,无套路,博客为证。

一、助手函数

通过Db 的助手函数我们可以省略表前缀指定表进行操作,例如上一节咱们通过 Db::table 对数据表进行操作时需要传入完整的表名,那么在这里咱们若设置了表前缀的情况下使用 Db::name 即可直接传入除前缀外的表名对数据库进行操作。

二、数据新增 save

数据新增在 tp6 中使用save 方法,其中 save 方法可以使用对应条件(主键时)也可以自动判断为更新方法,在此不考虑如何使用 save 进行新增,防止搞混不利于学习,咱们在这里直接使用 save 对其进行数据新增,以下是 save 进行新增的官方手册示例:

$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::name('user')->save($data);

以上代码中创建了一个 data 数据作为新增的数据,随后使用 db::name 传入表 user 指定为操作表,随后使用 save 对其进行数据新增。

在此时我们若想对数据库 student 进行数据增加,name代码就可以写成如下形式:

public function insert(){$data =['name' => '西瓜', 'height' => '172'];$res=Db::name('student')->save($data);dump($res);
}

以上代码在 index 控制器中新增了一个 insert 方法,创建了一个数组,其中有对应的数据,随后使用 save 方法进行数据新增,并且我们使用了 res 变量存储了返回值,随后进行查看,那么此时访问该方法后,结果如下:
在这里插入图片描述
此时将会返回一个影响条数,再查看数据库内容发现西瓜已新增至数据库之中:
在这里插入图片描述

三、数据新增 insert

不仅可以使用 save 方法对其进行新增操作,还可以使用 insert 方法对其进行新增:

Db::name('student')->insert($data);

四、strict

此时若在对数据库操作时,新增了其他字段,那么此时将会报错:

public function insert(){$data =['name' => '西瓜', 'height' => '172','width'=>'111'];$res=Db::name('student')->save($data);dump($res);}

结果如下:
在这里插入图片描述
那么此时若不希望抛出异常,并且成功执行可以使用 strict 方法,不存在的字段将会自动抛弃:

public function insert(){$data =['name' => '南瓜', 'height' => '172','width'=>'111'];$res=Db::name('student')->strict(false)->insert($data);dump($res);
}

结果如下:
在这里插入图片描述
查看数据库已成功添加数据:
在这里插入图片描述

五、replace

在使用 mysql 数据库时,可以使用 replace 方法,使用replace插入数据若有主键相同情况,将会自动的进行修改替换掉主键对应的内容,首先我们查看数据库内容:
在这里插入图片描述
接着咱们使用 replace 数据进行新增:

public function insert(){$data =['id'=>3,'name' => '瓜苗', 'height' => '172'];$res=Db::name('student')->replace()->insert($data);dump($res);
}

执行后结果如下:
在这里插入图片描述
数据库结果如下:

在这里插入图片描述

六、insertGetId() 返回新增 ID

若想在新增数据时返回新增后数据的 ID 值,那么直接使用 insertGetId() 即可(官方示例):

$userId = Db::name('user')->insertGetId($data);

七、批量新增数据 insertAll

批量新增数据可以使用 insertAll 方法,使用示例如下:

public function insert(){$data = [['name' => '芋头', 'height' => '173'],['name' => '萝卜', 'height' => '171'],['name' => '花菜', 'height' => '172'],['name' => '例子', 'height' => '172'],['name' => '酸梨大王', 'height' => '172'],['name' => '一库', 'height' => '171']];$res=Db::name('student')->insertAll($data);dump($res);
}

以上代码在 index 控制器中新增了一个 insert 方法,创建了一个数组,其中有对应的数据,随后使用 save 方法进行数据新增,并且我们使用了 res 变量存储了返回值,随后进行查看,那么此时访问该方法后,结果如下返回了影响条数:

在这里插入图片描述
数据库结果如下:
在这里插入图片描述
同时 replace() 方法也可以使用使用,官方示例如下:

Db::name('user')->replace()->insertAll($data);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/285988.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用bat修复office文件图标

如果电脑上安装了office,再安装wps,卸载wps后office文件图标会丢失。利用下边的代码,另存为bat文件,运行后可以快速修复图标问题。 rem 修复office文件默认图标.bat:: office图标文件路径,请根据自己电脑上的安装目录设…

VS2019如何创建C++项目?没有找到空项目(C++)完全解决方案

在使用Visual Studio 2019创建C++空项目时,没有空白项目可选,如下图所示,原因是在安装VS2019时没有选择C++对应的模块。本文讲解如何使用VS2019创建C++空项目,并使用C语言输出Hello World。 运行Visual Studio Installer,点击【修改】。 勾选【使用C++的桌面开发】,点击…

CentOS7.2 忘记root密码解决

CentOS 7 root密码的重置方式和CentOS 6完全不一样,以进入单用户模式修改root密码为例。 1.重启开机按esc,在第一行按e,进行编辑 2.编辑修改两处:ro改为rw,在LANGen_US.UFT-8后面添加init/bin/sh 3.按CtrlX重启,并修改…

Android之解决NestedScrollView嵌套RecyclerView部分手机返回到这个页面Recyclerview顶部,而不是页面NestedScrollView顶部

1、问题 NestedScrollView嵌套Recyclerview部分手机返回到这个页面Recyclerview顶部,而不是页面NestedScrollView顶部 部分布局大致如下 <androidx.core.widget.NestedScrollViewandroid:layout_width="match_parent"android:layout_height="match_parent…

词法分析程序的功能

词法分析程序的功能其实就是对所输入的字段进行词法分析任务&#xff0c;对用户的源程序从左到右进行扫描&#xff0c;按照语言的词法规则识别各类单词&#xff0c;并产生相应单词的属性字&#xff0c;并随之显现出来&#xff0c;成为词法分析程序的功能 转载于:https://www.cn…

android:制作 Nine-Patch 图片

它是一种被特殊处理过的 png 图片&#xff0c;能够指定哪些区域可以被拉伸而 哪些区域不可以。 那么 Nine-Patch 图片到底有什么实际作用呢&#xff1f;我们还是通过一个例子来看一下吧。比如 说项目中有一张气泡样式的图片 message_left.png&#xff0c;如图 3.38 所示。 图 …

08 获取器 withAttr、多连缀、whereRaw、事务、数据集《ThinkPHP6 入门到电商实战》

知识点&#xff1a;获取器 withAttr、多连缀、whereRaw、事务、数据集 文章目录&#xff08;更新中…&#xff09; 01 thinkphp6的前期开发准备《ThinkPHP6 入门到电商实战》 02 控制器《ThinkPHP6 入门到电商实战》 03 数据库查询、模型查询、多库查询《ThinkPHP6 入门到电商…

Chrome 双击关闭标签,新窗口打开新地址,一个插件搞定,安装方便,自带hosts

对&#xff0c;没错&#xff0c;就这它&#xff1a; 下载地址&#xff1a;https://shuax.com/project/greenchrome/ 一、插件安装 下载后&#xff0c;将下载的压缩包解压&#xff0c;根据自己Chreom浏览器是32位还是64位找到对应的 winmm.dll 文件&#xff0c;复制到Chome安装…

【ArcGIS遇上Python】从入门到精通系列之第二章:ArcGIS Python基本语法基础速递

Python的语法和其它编程语言的语法有所不同,编写Python程序之前需要对语法有所了解,才能编写规范的Python程序。本篇介绍Python标识符的同时,也讨论了Python变量的声明和赋值。通过本章的学习,将对python的数据类型、操作符、变量与赋值、代码块及缩进对齐、控制结构、函数…

C#中的闭包和意想不到的坑

虽然闭包主要是函数式编程的玩意儿&#xff0c;而C#的最主要特征是面向对象&#xff0c;但是利用委托或lambda表达式&#xff0c;C#也可以写出具有函数式编程风味的代码。同样的&#xff0c;使用委托或者lambda表达式&#xff0c;也可以在C#中使用闭包。根据WIKI的定义&#xf…

C语言试题五十八之请编写函数fun,:计算并输出下列多项式的值(sn=1+1/1!+1/2!+1/3!+1/4!+…+1/n! )

📃个人主页:个人主页 🔥系列专栏:C语言试题200例目录 💬推荐一款刷算法、笔试、面经、拿大公司offer神器 👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 请编写函数…

投票彰显电信合约机诺基亚Lumia 800C受热捧

49元可以做什么&#xff1f;与朋友吃顿便饭、买几包好烟&#xff0c;同时也能参加中国电信Lumia 800C的合约购机计划&#xff0c;其中选择49元是最低套餐&#xff0c;选择并预存600元话费&#xff0c;便可以以2999元购买Lumia 800C。 对于Lumia 800C&#xff0c;它可是新一代诺…

07查询表达式 及 page分页、order 排序《ThinkPHP6 入门到电商实战》

文章目录&#xff08;更新中…&#xff09; 01 thinkphp6的前期开发准备《ThinkPHP6 入门到电商实战》 02 控制器《ThinkPHP6 入门到电商实战》 03 数据库查询、模型查询、多库查询《ThinkPHP6 入门到电商实战》 04 tp6 的查数据《ThinkPHP6 入门到电商实战》 05 tp6 的数据添…

msSql 利用 xp_cmdshell 删除 创建目录

DECLARE DATABakPath VARCHAR(500) ND:\DataBak\ DECLARE RemoteComand VARCHAR(500)SET RemoteComand rd /s /qDATABakPath\dbname EXEC xp_cmdshell RemoteComand,no_output --删除文件夹,为了清理旧备份 SET RemoteComand mkdir DATABakPath\dbname EXEC xp_…

基于netty的微服务架构

基于netty的微服务架构 微服务一篇好文章 http://san-yun.iteye.com/blog/1693759 教程 http://udn.yyuap.com/doc/essential-netty-in-action/GETTING%20STARTED/Introducing%20Netty.html netty原理 http://www.infoq.com/cn/articles/netty-server-create netty方面专家 李林…

C语言试题五十九之请编写一个函数fun,它的功能时:求fibonacci数列中大于t的最小的一个数,结果由函数返回。

📃个人主页:个人主页 🔥系列专栏:C语言试题200例目录 💬推荐一款刷算法、笔试、面经、拿大公司offer神器 👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 请编写一个…

无人机模拟操控凤凰模拟器(PhoenixRC 5.0)安装及配置图文教程(附凤凰模拟器下载地址)

文章目录 1. 凤凰模拟器简介2. 凤凰模拟器安装及配置图文教程3. 凤凰模拟器下载地址1. 凤凰模拟器简介 凤凰phoenixrc模拟器(航模8合1模拟器)是一款专业的飞行模拟器软件,它是属于航模新手练模拟专用,可模拟大疆无人机,各种穿越机,还有很多固定翼和直升机等等。凤凰模拟操…

NCF 的Dapr应用实例的运行

简介在进行今天的主要内容之前&#xff0c;先带大家了解一下DaprDapr 是一个可移植的、事件驱动的运行时&#xff0c;它使任何开发人员都可以轻松构建在云和边缘上运行的弹性、无状态和有状态的应用程序&#xff0c;并包含语言和开发人员框架的多样性。任何语言&#xff0c;任何…

E-MapReduce上如何升级EMR-Core

本文档将介绍如何将老集群的EMR-Core升级到最新版本 什么是EMR-Core EMR-Core是E-MapReduce集群上支持Hadoop生态组件读写OSS的依赖包。它提供一种高效地读写OSS数据的实现&#xff0c;并不断地在优化。所以&#xff0c;随着E-MapReduce版本的迭代&#xff0c;我们就有必要升级…

06 tp6 的数据更新(改)及删除 《ThinkPHP6 入门到电商实战》

文章目录&#xff08;更新中…&#xff09; 01 thinkphp6的前期开发准备《ThinkPHP6 入门到电商实战》 02 控制器《ThinkPHP6 入门到电商实战》 03 数据库查询、模型查询、多库查询《ThinkPHP6 入门到电商实战》 04 tp6 的查数据《ThinkPHP6 入门到电商实战》 05 tp6 的数据添…