TP5.1插入数据为空的一个问题

TP5多条数据插入 例如有这么几条属性相同的数据要存入数据库,需要对数据进行二次处理。 <form method="post" class="form-horizontal js-ajax-form margin-top-20" action="" id="form"> <table> <tr> <td><input ty... 阅读详情

PHP技术交流群:180460365、320205320、320205320

本文博客地址

https://blog.youkuaiyun.com/chenyope

 

thinkphp5.1的一个坑

在插入之前,如果执行了查询语句指定了字段,后面的插入操作只会更新这个字段。导致自己数据插入为空、不全。

 

比如我先查询,指定 subject 字段

$forum_thread_list=$this->forum_thread->field('subject')->order('tid','desc')->paginate(50,true);

再插入(我后面有插入数据操作)

$is_insert=$this->forum_thread->data($thread_data)->insert();

发现数据库一直都无法按照我写好的数组执行插入,一开始以为是缺了个别字段的数据,直到我打印了sql

echo $this->forum_thread->getLastSql();

发现最后一条语句是这样的,是只插入了一个字段数据。显然这是不对的,我其他字段的值呢???如下:

INSERT INTO `s_forum_thread` (`subject`) VALUES ('我一直都想把北京房子卖了,然后回到老家,换个大房子,买上一辆车,过上慢节奏走的生活。可房东一直不同意。 ​​​​')

 

往上一瞄,发现上面的查询指定了 subject 字段查询,猜测应该是这里的问题(有时候直觉就是那么准准准),于是改成

$forum_thread_list=$this->forum_thread->order('tid','desc')->paginate(50,true);

重新运行查看最后一条sql,全部值都有了,搞定!

INSERT INTO `s_forum_thread` (`fid` , `author` , `authorid` , `subject` , `dateline` , `lastpost` , `views` , `status`) VALUES (37 , '段子君' , 12 , '我一直都想把北京房子卖了,然后回到老家,换个大房子,买上一辆车,过上慢节奏走的生活。
可房东一直不同意。 ​​​​' , 1555829211 , 1555829211 , 2 , 32)

 

码农转型中,欢迎关注码农个人公众号,交流深夜的姿势,不要总是阅读毒鸡汤文~

gseapy python包GO、KEGG富集(注释)分析 文档案例参考:https://gseapy.readthedocs.io/en/latest/gseapy_example.html#Over-representation-analysis-by-Enrichr-web-services安装:建议安装最新版(这里安装的1.04):https://github.com/zqfang/GSEApy/releases。 阅读详情

相关推荐

记录:rk3568适配开源GPU驱动(panfrost)

摘要:本文介绍了在RK3568芯片上移植Mali-G52 GPU驱动的过程。主要包括内核dts文件修改和内核配置调整两部分。

xuesong10210的博客 2238

tp5批量添加问题汇总

tp5提供的批量添加的方法:insertAll 下面说一下可能遇到的问题, 1:字段长度超出:String data,right truncated:1406 Data too long for column ‘content’ at row 1 解决方法:直接修改字段长度就可以,比如原来text,把类型改为longtext 2.某条数据缺少字段:Cardinality violation: 1222 The used SELECT statements have a different number of

cheers_bin的博客 1900

STM32F103 串口DMA + 空闲中断 实现不定长数据收发

文章目录1. 空闲中断1.1 uart_dma.c1.2 uart_dma.h1.3 main.c1.4 stm32f10x_it.c1.5 效果演示1.6 知识补充1.6.1 外设的基地址     DMA(Direct Memory Access,直接存储器访问) 是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依赖于 CPU 的大量中断负载。否则,CPU 需要从来源把每一片段的资料复制到暂存器,然后把它们再次写回到新的地方。在这个时间中,CPU

夏夜晚风_的博客 3万+

Thinkphp5.1定义空操作

1.创建一个错误文件Error.php D:\phpstudy_pro\WWW\myvue\api\application\index\controller\Error.php 2.当访问一个不存在的控制器是触发空操作 <?php namespace app\index\controller; use think\Controller; use think\facade\Request; class Error extends Controller { public function in

weixin_39218464的博客 361

宏基因组功能注释实战:从CAZyme到VFDB的完整流程(含数据库下载与脚本优化)

本文详细介绍了宏基因组功能注释的完整流程,涵盖CAZyme、eggNOG、CARD和VFDB四大核心数据库的实战应用。从环境配置、数据库下载与预处理到注释流程执行与优化,提供了全面的操作指南和脚本优化建议,帮助研究人员高效完成宏基因组数据分析。特别针对CAZyme注释等关键步骤给出了参数优化方案和常见问题排查方法。

weixin_29289821的博客 296

大数据运维面试题及答案

1. 架构组成:- 2 个 NameNode(Active 活跃节点、Standby 备用节点),实时同步元数据(通过 JournalNode 集群,默认 3 个节点,存储 edits 日志,Active 写入、Standby 读取以保持元数据一致);- 容错性强:通过 RDD 的 “ lineage(血缘)” 机制,任务失败时可快速重算,无需从头执行。:集群 “大脑”,管理元数据(文件目录、块位置),实时响应客户端请求,数据存于内存,元数据镜像(fsimage)和编辑日志(edits)持久化到磁盘;

weixin_42795092的博客 908

thinkphp6 模型更新int字段为null

当你在使用模型的save, update 等方法保存数据时,想要设置某个字段为null时,无法生效。当遇到这种情况,只能先调用强制覆盖方法:force(), 这样就能生效了。重点在这里,如果你设置的值为null,则直接被忽略了。

菜鸟没翅膀 1378

Simplorer-Maxwell联合仿真速度太慢?我用这3个技巧把仿真时间砍半(附SVPWM周期与步长设置避坑)

本文详细介绍了Simplorer-Maxwell联合仿真性能优化的3个关键技巧,包括仿真步长与周期的科学配置、基于任务调度的加速技术以及模型简化与精度平衡。特别针对SVPWM参数设置提供了避坑指南,帮助工程师在不牺牲精度的情况下将仿真时间缩短50%以上,适用于电机驱动系统开发等场景。

weixin_29189381的博客 466

Thinkphp 插入数据丢失

今天碰到一个崩溃的问题:利用Thinkphp框架提交表单时会出现部分字段无法插入数据库的情况。排查良久始终不得解决! 查TP手册发现,我配置TP框架时引入的了数据库缓存的机制,如果不清理缓存始终缺少字段。删除文件,完美解决

superman_wind的专栏 1625

Realtek千兆PHY RTL8211FS相关寄存器操作详解

通过合理配置和控制RTL8211FS寄存器,您可以实现对以太网的各种功能和参数的控制和配置。请注意,具体的寄存器操作和配置值可能因具体需求而有所不同,您应参考RTL8211FS芯片的数据手册以获取准确的寄存器说明和操作规范。我们将提供相应的源代码示例,以帮助您理解和实施这些操作。通过操作这些寄存器,我们可以配置和控制RTL8211FS芯片的各种功能和参数。需要注意的是,具体的寄存器操作和配置值会根据您的具体需求而有所不同。您需要参考RTL8211FS芯片的数据手册以获取详细的寄存器说明和操作规范。

RlDart的博客 2660

数据挖掘实战-基于情感分析+网络语义分析对泾阳茯茶用户评论进行文本分析

本实验数据集来源于京东商城,使用Python爬虫获取泾阳茯茶商品的用户评论,共计3416条数据,字段有用户ID、用户昵称、IP属地、评论时间、评分、评论内容,共计6个字段信息。'''作者:艾派森csdn主页:https://blog.csdn.net/m0_64336780时间:2024/5/28'''# 导包import csv# 获取评论q=0.01',q=0.9,en;b_avif=1;b_dw=1412;b_dh=650;areaId=27;

m0_64336780的博客 1万+

thinkphp5.1 踩过的坑 insert、insertAll

今天在存数据的时候踩到了一个关于 insert 和 insertAll的坑,因为insertAll因为也可以保存一条数据,索性就都用insertAll 来保存 这里注意 insert 在格式上是一维数组的data格式,但是insertAll 需要二维数组的data格式!!! ...

liyiliang123的博客 9168

核磁共振常用的文件格式介绍:NIfTI volume 格式 (*.nii), GIFTI 格式 (*.gii), CIFTI 格式 (*.nii)

NIfTI volume 格式 (*.nii)GIFTI 格式 (*.gii)CIFTI 格式 (*.nii)Scene file文件 (*.scene)规格文件 (*.spec)解剖 (*.annot)一个场景文件包含一个或多个场景;每个场景实际上是保存时 wb_view 内部状态的快照。这包括有关加载哪些文件、如何显示、如何配置选项卡的信息(选择了哪些表面、在每个层中选择了哪些文件、打开了哪些层、哪些视图旋转、调色板设置、平铺选项卡等),以及在它们上面添加了哪些注释(文本、箭头、圆圈等)。

从事脑科学核磁共振方法学研究,在Nature communications等权威期刊发表研究论文,熟练掌握磁共振处理方法和统计学方法,欢迎大家和我交流。 3045

《学习tp5.1之获取插入数据的Id值》

今天tp5.1框架用模型插入有数据时,发现一个很有用的方法,$this->getLastInsID()方法插入一条数据并返回插入数据的Id值,这对根据插入关联主键很有用处。 public function add($data) { //新增一条记录并返回插入数据的Id return $this->getLastInsID(); } ...

weixin_44572516的博客 1738

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

tp5事务中得到新插入数据的id

当我们新增一个订单时,一般都会增加两个表的数据,一个是订单主表,记录订单信息,一个是订单附表,记录订单的商品信息,这时就会是一对多的表数据关系,那么附表中一定要记录一个定单的唯一字段,以前都用的是 生成的订单号 来做为外键的值,然后在新增的时候开启事务,保证两个数据的同时写入。 因为以上做法不会在mysql的事务中关心,新生成的订单id,我们用的是订单号。 但是,现在我考虑使用订单的 id来...

hjh15827475896的博客 2469

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

TP5批量插入数据(分批插入)

我们知道TP5有insetall函数可以批量插入,但是如果一次插入10000条数据呢 同时插入肯定会卡死,所以我们分批插入 foreach ($sheetContent as $k => $v){ $arr['customerName'] = $v[0]; $arr['sex'] = $v[1]; $arr['typeId'] = $v[2]; $ar...

傻大个儿 1万+

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

tp5循环插入多条数据

tp5循环插入多条数据 public function insertdata() { ini_set(‘max_execution_time’, ‘0’);//设置永不超时,无限执行下去直到结束 $model = new indexModel(); datas=[];//循环插入一百万for(datas = []; //循环插入一百万 for (datas=[];//循环插入一百万for(i=10000; $i <1000000 ; $i+=10000) { # code… $j

RSFeegg的博客 1736

TP5插入数据

有3种方法实现插入数据 insert, 返回值是影响记录的行数,插入数 insertGetId 返回插入数据的自增加id insertAll() 一次性插入多条数据, 返回数据成功的行数 <?php namespace app\index\controller; use think\Controller; use think\Db; class Index extends Co...

codipy的博客 3405

tp5插入数据的方法

今天小编跟大家分享一下tp5插入数据的几种语法及区别; insert 是插入,返回插入的条数:一般用于多条插入 insertGetId : 是插入返回id:一般用于插入两个表时返回id save 是插入返回id 也可以更新:一般用于添加和编辑写在一起时 update 也是更新:一般用于更新数据 有什么不对的大家可以指出来,谢谢! ...

Kenneth_JC的博客 1040

TP5 Mysql中批量插入数据,有则更新,无则插入

insertAll里面有个replace参数,操作之后发现,即使这个参数设置成true,最后的执行结果是直接把已经存在的数据删除后再插入的,相当于先delete再insert.这样导致一些不需要更新的字段也不存在了. 在网上找到一个 ON DUPLICATE KEY UPDATE 的用法 实验后是自己想要的效果.更新就是update 这里重复就更新是指的更新主键或者唯一索引重复的地方 直接上代码 $res = Db::execute('INSERT INTO `student`(`student_n

图灵的棺材板的博客 3709

tp5 处理并发问题

数据库创建test表,我们的需求是这样的,查询test表是否存在数据,不存在,就插入1条,保证数据表只有1条数据。 我们首先尝试查询不加锁,代码如下 public function test_trans() { Db::startTrans(); // 启动事务 try { $res = db('test')->...

qq_16887641的专栏 4163

tp5或tp5.1中启用了事务,但没有正确回滚

tp5或tp5.1中的自动事务没有正确回滚问题 在tp5或tp5.1中的事务,无论自动事务还是手动事务,只有sql执行报错了才会中断执行并回滚,但如果sql没报错,只是影响行数为0(什么都没插入或更新),事务最后是会被提交的! 这个在用tp5或5.1的事务的时候务必注意,不然就会出现用了事务,但依然把错误数据写入的情况。 解决方案: //首先,全部事务都改用手动事务,不要用自动事务 // 启动事务...

Hey_JC的博客 4293

tp5获取插入的数据的自增id

tp5: insertGetId方法新增数据并返回主键值使用getLastInsID方法: Db::name('user')->insert($data);  $userId = Db::name('user')->getLastInsID(); // 使用insertGetId方法 Db::name('user')->insertGetId($data);

qq_33421488的博客 3万+

tp5+mysql 插入表情emoji,数据库报错的分析

Mysql保存包含emoj表情的字符串,日志查看如下: [ error ] [10501]SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x90\xAE\xF0\x9F...' for column 'nickname' at row 1 原因分析 nickname字段插入的字符串异常,分析是因为字符串...

sunsnow_swift的专栏 1176

tp5.1设置插入数据如果失败不抛出异常

tp5.1插入数据如果失败会抛出异常,那么解决办法是什么 如果不希望抛出异常,可以使用下面的方法: $data=['name'=>'codelovers.cn']; Db::name('user')->strict(false)->insert($data); 加上strict(false) 即可 原文地址:https://www.codelove...

编程爱好者之家 2382

tp5.1导入Excel插入数据库 前端将列表导出为Excel文件

前端导入Excel将对应字段插入数据库表中 用到 1. tp5.1 开发 2. php的扩展 PHPEXCEL 3. layui 的文件上传(前端) 先制作出前端显示的列表页面 用到layui的数据表格制作出需要的列表页面 导入功能 导入按钮的代码 <a onclick="importExcel()" class="layui-btn layui-btn-primary layui-btn-sm layui-icon layui-icon-upload"

weixin_45237065的博客 692
上一篇: Call to undefined method QL\QueryList::get()
下一篇: (errcode: 41030) invalid page hint
chenYoper-陈永鹏
博客等级 码龄15年 114粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值