yii2 mysql update_yii2 + mysql 常用增删改查操作语法以及事务

关于数据库mysql的使用: 1.查询: Salesorderitem::find()-asArray()-where([order_id=$order_id])-all();Salesorderitem::find()-asArray()-where([order_id=$order_id])-one();Quote::findOne([customer_id = $customer_id]); 2.插入: $order = new S

关于数据库mysql的使用:

1.查询:

Salesorderitem::find()->asArray()->where(['order_id'=>$order_id])->all();

Salesorderitem::find()->asArray()->where(['order_id'=>$order_id])->one();

Quote::findOne(['customer_id' => $customer_id]);

2.插入:

$order = new Salesorder();

$order->order_status = $order_status;

$order->store = $store;

$order->save();

$order_id = Yii::$app->db->getLastInsertID();

$db->createCommand('INSERT INTO customer (name) VALUES (:name)', [ ':name' => 'Qiang',])->execute();

3更新:

3.1

Yii::$app->db->createCommand()->update(self::QUOTE_ITEM, [

'qty' => $qty,

'row_weight'=>$row_weight,

'base_row_total'=>$base_row_total,

'row_total'=>$row_total,

],

'quote_id='.self::$_quote_id.' and item_id='.$item_id )

->execute();

3.2// to update an existing customer record

$customer = Customer::findOne($id);

$customer->email = 'james@example.com';

$customer->save();

// equivalent to $custmer->update();

4. 删除:

Quoteitem::deleteAll('quote_id='.self::$_quote_id.' and item_id='.$item_id);

注:使用mysql的时候一定要注意sql注入攻击的屏蔽

# 开始事务

$innerTransaction = Yii::$app->db->beginTransaction();

try {

# 保存quoteitems

self::removeQuoteItems($data['item_id']);

# 获取quoteitems ,保存到 self::$_quote_items

self::getQuoteItems();

# 保存 quote

self::saveQuote();

$innerTransaction->commit();

} catch (Exception $e) {

$innerTransaction->rollBack();

}

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

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

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

相关文章

mysql 按日期拆分成多条记录_mysql性能优化2 设计规范 设计原则 结构优化 拆分 配置优化...

一、MYSQL数据库设计规范1、数据库命名规范a、采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线’_组成;b、命名简洁明确(长度不能超过30个字符);c、例如:user, stat, log, 也可以wifi_user, wifi_stat, wifi_log给数据库加个前缀;d、除非是备份数…

python添加环境变量_windows系统下python学习-1 (python环境变量配置)

python安装完成后检测一下是否添加了环境变量(基于你已经完成了python的安装)使用 WindowsR 键调出运行窗口,输入 cmd 按回车调出命令提示符窗口,输入 python 回车已添加环境变量如果你回车后出现上图效果,可以进入python编程界面…

c 子类对象 访问父类对象受保护成员_java面向对象总结

前言:文章参考《java疯狂讲义》进行总结和归纳,知识要进行输出才算真正的有用。在java的世界里,一切皆为对象,类是对对象的抽象,来一个例子:Person类public 有了类,就可以创建者个类的对象了&am…

多次执行sql 后卡住_解Bug之路记一次中间件导致的慢SQL排查过程

解Bug之路-记一次中间件导致的慢SQL排查过程前言最近发现线上出现一个奇葩的问题,这问题让笔者定位了好长时间,期间排查问题的过程还是挺有意思的,就以此为素材写出了本篇文章。Bug现场我们的分库分表中间件在经过一年的沉淀之后,…

centos安装mysql5.6系统崩溃_CentOS7安装MySQL5.6冲突总结

[rootlocalhost ypeng]# service mysql statusRedirecting to /bin/systemctl status mysql.serviceUnit mysql.service could not be found.出现以上安装错误的原因是:系统已经可能是系统装了其他版本的mysql-libs包或者是mysql数据库文件导致不兼容。可以将MySQL彻…

c++思维导图_40+张最全Linux/C/C++思维导图,你确定不收藏?

ID:技术让梦想更伟大整理:李肖遥申明:所有图片都源自网络素材,侵删。这是我自己收集的,并花大量时间整理的可说最全的Linux/C/C思维导图。有些图可能不是高清,但是放大即可看清楚。linux思维导图认识LinuxLinux学习路径…

mysql logtimestamps_MySQL5.7.18参数log_timestamps导致日志信息时间差8小时

MySQL5.7.18参数log_timestamps导致日志信息时间差8小时环境:MySQL5.7.18CentOS6.8背景:排查问题查看mysql日志的时候发现mysql错误日志和慢查询日志中的时间戳信息比正常时间少了8小时.官方资料显示:log_timestamps 自5.7.2版本被引入,此参数控制了general log、er…

fortran安装_如何在 CentOS 8 上安装 GCC

本文最先发布在:如何在 CentOS 8 上安装 GCC​www.itcoder.techGNU 编译器集合是一系列用于语言开发的编译器和库的集合,包括: C, C, Objective-C, Fortran, Ada, Go, and D等编程语言。很多开源项目,包括 Linux kernel 和 GNU 工具&#xff…

mysql登录root 1130_通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法

解决方法:1。改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改"mysql" 数据库里的 "user" 表里的 "host"项,从"loc…

c# out原理 ref_移植贪吃蛇——从C#到C++

欢迎参与讨论,转载请注明出处。前言因为某些机缘巧合,引起了我对C的重视。一时兴起,决定将两年前用Unity写的Snake进行移植。经过两周的抽空,总算是完成了。项目采用现代C标准编写,采用CMake构建,图形库为S…

seata 如何开启tcc事物_分布式事务Seata-TCC源码分析

为了更好理解分布式事务,首先提出一个问题:假设数据库中有两个表ta,tb,我们要分别更改ta表中的ra记录和tb表中的rb记录,但要求ra和rb记录都修改成功,才认为此次操作时成功,或者需要失败回滚。针…

helm安装mysql_helm安装配置

简介helm是kubernetes的包管理工具,用于简化部署和管理 Kubernetes 应用。用来管理charts——预先配置好的安装包资源。Helm和charts的主要作用:应用程序封装版本管理依赖检查便于应用程序分发helm是一个C/S框架的软件,helm相当于一个客户端&…

promise的三种状态_一.Promise中核心逻辑的实现

首先看一下Promise代码:let promise new Promise((resolve,reject)>{resolve(成功);//reject(失败); }) promise.then(val>{console.log(val); },reason>{console.log(reason); })我们根据以上的一个简单的用例,得到Promise类的最主要的核心逻辑…

mysql如何定位到数据_如何快速定位当前数据库消耗CPU最高的sql语句?

概述如果是Oracle数据库我们可以很容易通过sql来定位到当前数据库中哪些消耗CPU高的语句,而mysql数据库可以怎么定位呢?这里用一个简单例子说明下...主要是了解如何定位的思路,具体看官网介绍..参考:https://www.percona.com/blog…

当当elastic-job docker快速部署_[小Z课堂]-docker 快速部署 elasticsearch 和 kibana,一键部署...

各位小伙伴,小Z课堂来袭,每天只需看三分钟,你就能用docker 快速部署各种环境。今天就用docker 来部署 elasticsearch 和 kibana。docker的入门请上度娘学习,这里直接进入实战。拉镜像镜像版本:base image:U…

xtrabackup备份mysql5.7_【 xtrabackup】CentOS7.x上基于 MySQL 5.7.x的XtraBackup 安装与备份还原...

MySQL的XtraBackup 备份与恢复https://shockerli.net/post/xtrabackup-backup-recovery-mysqlPercona XtraBackup 备份原理与实践http://www.unixfbi.com/349.htmlXtraBackup备份恢复模拟实践https://blog.51cto.com/13178102/2151512Percona XtraBackup 安装介绍篇https://www…

数字有维度, 质数可追寻

摘要 用数轴的点表示数, 实际是把数的几何意义单一 化, 把所有实数同等化. 在研究素数的问题上, 应该挖掘数的 更多几何意义, 就正自然数而言, 不同区间的数, 几何意义是 不相同的, 对应的点是不同空间的点, 具有多样化的. 寻找质 数, 就是设法把不同空间的 1 维数 (质数) 找出…

局域网聊天程序 java MySQL_课内资源 - 基于JAVA的局域网聊天软件的设计与实现(仿制QQ)...

一、系统分析1.1 问题描述客户端实现简易版的局域网聊天器实现富文本内容聊天智能聊天机器人群发消息传送文件等功能服务器端实现群发通知管理聊天线程1.2 系统功能分析客户端功能登陆注册发送表情消息发送文本消息截取图片图片处理震动效果发送文件群发消息设置聊天文本样式服…

北工大一拟录取女研究生在网络发不当言论,已被网友举报!

近日,北工大一拟录取女研究生在自己的社交平台发表不当的言论。随后,其言论引起网友的热议。>>>>对于网友的质疑,其通过微博发文称,要“开小号专门打拳”。当天夜里,有网友通过其微博的公开的考研信息&…

mysql微服务查询问题_【mysql】微服务架构下跨服务查询的聚合有什么好的方案?...

微服务架构中,每个服务都有自己的独立数据库。然而现在有个需求,需要生成一张实时的报表,该报表包含两个服务的数据。如服务A,服务B。B中仅包含A的主键id作为关联。而此报表的搜索条件包含A服务实体中的字段也包含B服务实体中的字…