# ThinkPhP5 视频教程(九):数据库-事务、链式操作
* 查询构造器
除了原生查询外,5.0还提供了数据库查询构造器,可以更方便执行数据库操作,查询构造器基于PDO实现,对不同的数据库驱动都是统一的语法。
> 注意:
ThinkPHP 5.0查询构造器使用 PDO参数绑定,以保护应用程序免于 SQL注入,因此传入的参数不需额外转义特殊字符。
~~~
// 插入记录
Db::table('think_data')
->insert(['id' => 18, 'name' => 'thinkphp', 'status' => 1]);
// 更新记录
Db::table('think_data')
->where('id', 18)
->update(['name' => "hello"]);
// 查询数据
$list = Db::table('think_data')
->where('id', 18)
->select();
// 删除数据
Db::table('think_data')
->where('id', 18)
->delete();
~~~
* 链式操作
使用链式操作可以完成复杂的数据库查询操作,例如:
~~~
// 查询十个满足条件的数据 并按照id倒序排列
$list = Db::name('data')
->where('status', 1)
->field('id,name')
->order('id', 'desc')
->limit(10)
->select();
dump($list);
~~~
支持链式操作的查询方法包括:
| 方法名 | 描述 |
| --- | --- |
| select | 查询数据集 |
| find | 查询单个记录 |
| insert | 插入记录 |
| update | 更新记录 |
| delete | 删除记录 |
| value | 查询值 |
| column | 查询列 |
| chunk | 分块查询 |
| count等 | 聚合查询 |
* 事务支持
>
注意:
由于需要用到事务的功能,请先修改数据表的类型为InnoDB,而不是MyISAM。
对于事务的支持,最简单的方法就是使用transaction方法,只需要把需要执行的事务操作封装到闭包里面即可自动完成事务,例如:
~~~
Db::transaction(function () {
Db::table('think_user')
->delete(1);
Db::table('think_data')
->insert(['id' => 28, 'name' => 'thinkphp', 'status' => 1]);
});
~~~
~~~[youku]
XMjc0MDQxNzg0NA =856x523
~~~
### 视频播放密码: tpshop
http://pan.baidu.com/s/1i55Clhz 高清视频下载地址(含demo)
**TP5粉丝群: 364702379**
[需要TPshop商城源码的可前往TPshop官网免费下载安装](http://www.tp-shop.cn)
- 第一讲、课程大纲
- 第二讲、入门与安装-上
- 第二讲、入门与安装-下
- 第三讲、URL和路由-路由
- 第四讲、URL和路由-URL
- 第五讲、请求和响应-请求
- 第六讲、请求和响应-响应
- 第七讲、SQL追踪器
- 第八讲、数据库-基本操作
- 第九讲、数据库操作-事务
- 第十讲、查询语言-上
- 第十一讲、查询语言-下
- 第十二讲、模型和关联-上
- 第十三讲、模型和关联-下
- 第十四讲、读取器与修改器
- 第十五讲、转换与自动完成
- 第十六讲、查询范围
- 第十七讲、输入和验证-上
- 第十八讲、输入和验证-下
- 第十九讲、关联-一
- 第二十讲、关联-二
- 第二十一讲、关联-三
- 第二十二讲、关联-四
- 第二十三讲、关联-五
- 第二十四讲、模型输出
- 第二十五讲、视图和模板-一
- 第二十六讲、视图和模板-二
- 第二十七讲、调试和日志
- 第二十八讲、API开发
- 第二十九讲、扩展
- 第三十讲、浅析session,cookie机制
- 第三十一讲、session的使用
- 第三十二讲、cookie的使用
- 第三十三讲、验证码
- 第三十四讲、文件上传
- 第三十五讲、图像处理
- 第三十六讲、版本3.2和5的差别
- 第三十七讲、未来与总结
- 第二套、TPshop大型项目实战
- TPshop项目实战
- 第一讲、内容介绍
- 第二讲、TPshop window安装
- 第三讲、TPshop linux安装
- 第四讲、TPshop目录结构
- 第五讲、单点登录
- 第六讲、支付插件原理
- 第七讲、支付宝支付集成
- 第八讲、微信支付
- 第九讲、银联支付
- 第十讲、TPshop QQ快捷登录
- 第十一讲、支付宝登录
- 第十二讲,微信扫码登录
- 第十三讲,新手入门微信开发
- 第十四讲,10分钟将TPshop部署服务器上线
- 第十五讲,网站真实高并发架设
- 第十六讲,网站真实高并发架设