新增

普通新增

$User = M("User"); // 实例化User对象
$data['name'] = 'ThinkPHP';
$data['email'] = 'ThinkPHP@gmail.com';
$User->add($data);

连续操作

$User = M("User"); // 实例化User对象
$data['name'] = 'ThinkPHP';
$data['email'] = 'ThinkPHP@gmail.com';
$User->data($data)->add();

使用Create

$User = M("User"); // 实例化User对象// 根据表单提交的POST数据创建数据对象
$User->create();
$User->add(); // 根据条件保存修改的数据

批量插入数据

$User->addAll($data)

读取

select方法

$User = M("User"); // 实例化User对象// 查找status值为1的用户数据 以创建时间排序 返回10条数据
$list = $User->where('status=1')->order('create_time')->limit(10)->select();

数组作为查询条件

$User = M("User"); // 实例化User对象
$condition['name'] = 'thinkphp';
$condition['status'] = 1;// 把查询条件传入查询方法
$User->where($condition)->select(); 

变更多个条件逻辑关系

$User = M("User"); // 实例化User对象
$condition['name'] = 'thinkphp';
$condition['account'] = 'thinkphp';
$condition['_logic'] = 'OR';// 把查询条件传入查询方法
$User->where($condition)->select();

对象方式查询

$User = M("User"); // 实例化User对象// 定义查询条件
$condition = new stdClass();
$condition->name = 'thinkphp';
$condition->status= 1;
$User->where($condition)->select(); 

表达式查询

$User = M("User"); // 实例化User对象// 要修改的数据对象属性赋值
$data['name'] = 'ThinkPHP';
$data['score'] = array('exp','score+1');// 用户的积分加1
$User->where('id=5')->save($data); // 根据条件保存修改的数据

快捷or查询

$User = M("User"); // 实例化User对象
$map['name|title'] = 'thinkphp';// 把查询条件传入查询方法
$User->where($map)->select(); 

快捷多字段and查询

$User = M("User"); // 实例化User对象
$map['status&title'] =array('1','thinkphp','_multi'=>true);// 把查询条件传入查询方法
$User->where($map)->select(); 

区间查询

$map['id'] = array(array('gt',1),array('lt',10)) ;

find方法

$User = M("User"); // 实例化User对象// 查找status值为1name值为think的用户数据
$User->where('status=1 AND name="think"')->find();

限定field

$User = M("User"); // 实例化User对象// 获取ID为3的用户的昵称
$nickname = $User->where('id=3')->getField('nickname');

返回一个字段组成的数组

$this->getField('id',true); // 获取id数组

多个字段返回关联数组

$User = M("User"); // 实例化User对象// 获取所有用户的ID和昵称列表
$list = $User->getField('id,nickname');

限定返回数量

$this->getField('id,name',5); // 限制返回5条记录

left join

$Model->join(' work ON artist.id = work.artist_id')->join('card ON artist.card_id = card.id')->select();
$Model->join('RIGHT JOIN work ON artist.id = work.artist_id')->select();

更多查询方法可以看这里:
http://doc.thinkphp.cn/manual/query.html

更新

条件选择后更新

$User = M("User"); // 实例化User对象// 要修改的数据对象属性赋值
$data['name'] = 'ThinkPHP';
$data['email'] = 'ThinkPHP@gmail.com';
$User->where('id=5')->save($data); // 根据条件保存修改的数据

连贯操作

$User = M("User"); // 实例化User对象// 要修改的数据对象属性赋值
$data['name'] = 'ThinkPHP';
$data['email'] = 'ThinkPHP@gmail.com';
//更新时间字段
$data['time']=date("Y-m-d H:i:s", time());
$User->where('id=5')->data($data)->save(); // 根据条件保存修改的数据

更新特定字段

$User = M("User"); // 实例化User对象// 更改用户的name值
$User-> where('id=5')->setField('name','ThinkPHP');

更新多个字段

$User = M("User"); // 实例化User对象// 更改用户的name和email的值
$data = array('name'=>'ThinkPHP','email'=>'ThinkPHP@gmail.com');
$User-> where('id=5')->setField($data);

递增递减

$User = M("User"); // 实例化User对象
$User->where('id=5')->setInc('score',3); // 用户的积分加3
$User->where('id=5')->setInc('score'); // 用户的积分加1
$User->where('id=5')->setDec('score',5); // 用户的积分减5
$User->where('id=5')->setDec('score'); // 用户的积分减1

删除

条件删除

$User = M("User"); // 实例化User对象
$User->where('id=5')->delete(); // 删除id为5的用户数据
$User->where('status=0')->delete(); // 删除所有状态为0的用户数据

限定删除数量

$User->where('status=0')->order('create_time')->limit('5')->delete(); 

事务

启动事务:
$User->startTrans(); 提交事务:
$User->commit();事务回滚:
$User->rollback();

本文内容来源:
http://doc.thinkphp.cn/manual/curd.html
http://doc.thinkphp.cn/manual/continuous_operation.html

ThinkPHP 5.数据库基本操作相关推荐

  1. SQL Server数据库基本操作(一)

    SQL Server数据库基本操作 基本表的定义.删除与修改 1.创建基本表 2.修改基本表 3.删除基本表 基本表的定义.删除与修改 创建数据库 CREATE DATABASE STUDENT 1. ...

  2. [JSP暑假实训] 三.MySQL数据库基本操作及Servlet网站连接显示数据库信息

    本系列文章是作者暑假给学生进行实训分享的笔记,主要介绍MyEclipse环境下JSP网站开发,包括JAVA基础.网页布局.数据库基础.Servlet.前端后台数据库交互.DAO等知识. 前一篇文章讲解 ...

  3. mysql数据库基本操作总结与归纳

    mysql数据库基本操作总结与归纳 登录命令 mysql -u 用户名 -p 密码 列如: [root@localhost ~]# mysql -u root -p [root@localhost ~ ...

  4. Java数据库篇2——数据库基本操作

    Java数据库篇2--数据库基本操作 1.启动.停止.服务 net start mysql net stop mysql 2.登入登出 本地 Mysql -u用户名 -p密码Mysql -u用户名 - ...

  5. python基础课程3(看代码看注释)--数据库基本操作(mysql)

    #人生苦短,我用python #推荐一个python数据结构可视化工具,网址:http://www.pythontutor.com ##课表:1.mysql数据库的基本操作:2.用python操作基本 ...

  6. MySQL系列:数据库基本操作(1)

    1. 登录数据库 mysql -h localhost -u root -p 2. 数据库基本操作 2.1 查看数据库 mysql> SHOW DATABASES; +------------- ...

  7. 1Python全栈之路系列之MySQL数据库基本操作

    Python全栈之路系列之MySQL数据库基本操作 MySQL数据库介绍 MySQL是一种快速易用的关系型数据库管理系统(RDBMS),很多企业都在使用它来构建自己的数据库. MySQL由一家瑞典公司 ...

  8. 【MySQL】数据库基本操作、表的操作

    一.数据库 1.什么是数据库 2.数据库基本操作 2.1.显示数据库 2.2. 创建数据库 2.3.选中数据库 2.4.删除数据库 3.数据库分类 4.MySQL 安装 二.数据表的使用 1. 常用数 ...

  9. Sqlite3 数据库基本操作

    Sqlite3 数据库基本操作 1.sqlite3命令 **2.sqlite3编程接口:** 3.事务:一个或多个更改数据库的扩展 4.like和glob子句: 5.limit 和 offset 6. ...

最新文章

  1. PHP basename() 函数
  2. 应用程序的数据库从Sql Server迁移到Oracle
  3. 跳转后退_羽毛球后退步法常见问题及解决方法
  4. 当跨国企业女职业经理人遇上创业女 CEO,两者会擦出什么样的火花?
  5. “谷歌杀手”发明者,科学天才 Wolfram
  6. python中不可以使用类名访问的是_如何在Python中访问当前执行的模块或类名?
  7. Appium自动化下拉刷新
  8. 计算机虚拟化的基本概念,虚拟化和虚拟机基本概念
  9. mysql数据库完整实例-“汽车维修”
  10. 堆内存(heap)和栈内存(stack)区别
  11. 实现QQ音乐项目的一些技术点jQuery,html5
  12. mapper文件报错:corresponds to your MySQL server version for the right syntax to use near ‘)VALUES( ‘
  13. 正则——只能允许是汉字、拼音和数字的正则表达式
  14. php 防止爬虫,服务器反爬虫攻略:Apache/Nginx/PHP禁止某些User Agent抓取网站
  15. 商业模式的逻辑--清华大学X-lab沈拓学习笔记
  16. 360百科词条怎么创建(教你100%通过审核方法)
  17. pymongo学习笔记
  18. 云安全网站防护系统“李鬼”横行
  19. 百度对外开放Firefox版百度搜霸源码
  20. c语言 值传递与引用传递

热门文章

  1. 一个火鸡界大数据学家的一生
  2. 基于遗传算法的BP神经网络优化算法(GA BP)实用算例
  3. 计算机存储系统之磁盘阵列技术
  4. 12个乒乓球,其中有11个球每个球重量一模一样,另外1个球重量和那11个球不一样.用天平称三次,把单独的球(和那11个重量不一样的球)找出来
  5. 如何写面向互联网公司的求职简历
  6. 有关QSignalMapper的只言片语
  7. 【数学建模】灰度预测之关联度求解
  8. java毕业设计社区疫情防控系统mybatis+源码+调试部署+系统+数据库+lw
  9. 点击“换一换”切换商品,使用jquery slice()实现无缝连接切换
  10. 软件工程——软件测试(黑盒测试、白盒测试、测试分析报告)