php手记之05-tp5模型操作数据库
- # 实例化模型
- // $user = new User;
- // $user1 = new User();
- // $user2 = model('user');
- // 添加一条数据
- # 方法1
- // $user1 = new User();
- // $user1->name = 'phpthink';
- // $user1->age = 89;
- // $user1->save();
- # 方法2
- // $user = new User;
- // $user->save([
- // 'name' => 'thinkph111p',
- // 'age' => '12'
- // ]);
- # 方法3
- // $user = User::create([
- // 'name' => 'thinkph222p',
- // 'age' => '19'
- // ]);
- // echo $user->name;
- // 过滤post数组中的非数据表字段数据
- // $user = new User;
- // $user->allowField(true)->save($request->param());
- // dump($request->param());
- # 添加多条记录
- // $user = new User;
- // $list = [
- // ['name' => 'thinkphp12', 'email' => 'thinkphp@qq.com'],
- // ['name' => 'onethink22', 'email' => 'onethink@qq.com']
- // ];
- // $user->saveAll($list);
- // 更新数据
- # 方法1find
- // $user = User::get(10);
- // $user->name = 'thinkphp';
- // $user->email = 'thinkphp@qq.com';
- // $user->save();
- # 方法2
- // $user = new User;
- // save方法第二个参数为更新条件
- // $user->save([
- // 'name' => 'thinkphp',
- // 'email' => 'thinkphp@qq.com'
- // ], ['id' => 1]);
- // $user = new User;
- // 过滤post数组中的非数据表字段数据
- // $user->allowField(true)->save($request->param(), ['id' => 1]);
- # 方法3
- // User::where('id', 1)->update(['name' => 'thinkphp']);
- // 删除数据
- # 方法1
- // 在查询后调用delete方法。返回影响的记录数
- // $user = User::get(1);
- // $user->delete();
- # 方法2--直接调用静态方法(根据主键删除)
- // User::destroy(1);
- // 支持批量删除多个数据
- // User::destroy('1,2,3');
- // User::destroy([1, 2, 3]);
- // 条件删除
- // 使用闭包删除
- // User::destroy(function($query){
- // $query->where('id','>',21);
- // });
- // 数据库类的查询条件删除
- // User::where('id','>',20)->delete();
- // 软删除
- // $user = new User();
- // $ret = User::where('status', 1)->select();
- # 查询
// 取出主键为1的数据
$user = User::get(1);
//查询单条记录- // $ret = User::where('name', 'liww')->find();
- # 查询多条记录(条件)
- // $ret = User::where('status', 1)->limit(3)->order('id', 'asc')->select();
// 根据主键获取多个数据
$list = User::all('1,2,3');
// 或者使用数组
$list = User::all([1,2,3]);
// 对数据集进行遍历操作
foreach($list as $key=>$user){
echo $user->name;
}
- // 查询全部
$ret = User::select();
# 获取某个字段或者某个列的值
// 获取某个用户的名字
// $ret =User::where('id', 10)->value('name');
// 获取某个列的所有值
// $ret = User::where('status', 1)->column('name');- # 动态查询
// 根据name字段查询用户信息
// $name = User::getByName('thinkphp');
// 根据email字段查询用户
$user = User::getByEmail('thinkphp@qq.com');
php手记之05-tp5模型操作数据库的更多相关文章
- .NET使用DAO.NET实体类模型操作数据库
一.新建项目 打开vs2017,新建一个项目,命名为orm1 二.新建数据库 打开 SqlServer数据库,新建数据库 orm1,并新建表 student . 三.新建 ADO.NET 实体数据模型 ...
- Qt 学习之路 2(56):使用模型操作数据库
Qt 学习之路 2(56):使用模型操作数据库 (okgogo: skip) 豆子 2013年6月20日 Qt 学习之路 2 13条评论 前一章我们使用 SQL 语句完成了对数据库的常规操作,包括简单 ...
- Django中的模型(操作数据库)
目录 Django配置连接数据库 在Django中操作数据库 原生SQL语句操作数据库 ORM模型操作数据库 增删改查 后台管理 使用后台管理数据库 模型是数据唯一而且准确的信息来源.它包含您正在储存 ...
- 黑马lavarel教程---5、模型操作(AR模式)
黑马lavarel教程---5.模型操作(AR模式) 一.总结 一句话总结: AR: ActiveRecord :Active Record(活动记录),是一种领域模型模式,特点是一个模型类对应关系型 ...
- Django1.11模型类数据库操作
django模型类数据库操作 数据库操作 添加数据 1,创建类对象,属性赋值添加 book= BookInfo(name='jack',pub_date='2010-1-1') book.save() ...
- mybatis 操作数据库(05)
类型转换.动态排序,查询接口与mapper对应关系说明及其注意事项 一.MyBatis 自带写常见类型转换器.例如:java 类中 String 对应 mySQL中的varchar 二.自定义类型转换 ...
- tp5模型事件回调函数中不能使用$this
tp5模型事件回调函数中不能使用$this,使用会报错,涉及到数据库操作使用Db类,不能使用$this->save()之类的方式 如果回调函数中需要使用类内函数,需要将函数定义为static,通 ...
- python操作数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- 十五、JDBC操作数据库
1.数据库特点 实现数据共享.减少数据的冗余度.数据的独立性.数据集中控制.数据的一致性和可维护性. 2.数据库种类和功能 (1)层次型数据库:类似于树结构,是一组通过链接而互相联系在一起的记录. ( ...
随机推荐
- ios9 字符串与UTF-8 互相转换
在数据网路请求或其他情况下,需要将字符串转换成UTF-8编码 ios9后对其方法进行了修改 NSString *str = @"北京"; 把这个转成UTF8以前我们使用的是 NSS ...
- ansible自动化部署之场景应用
ansible自动化配置管理 官方网站: https://docs.ansible.com 一.安装 配置 启动 (ansible由红帽收购) (1)什么是ansible ansible是IT自动化配 ...
- CMake---基础练习2
# t2/ CMakeLists.txt cmake_minimum_required(VERSION 2.8) #1 #PROJECT (HELLO) #SET(SRC_LIST main.c) # ...
- two pointers 思想
针对有序的序列特性做出的优化思想
- 线性查找与二分查找(python)
# -*- coding: utf-8 -*- number_list = [0, 1, 2, 3, 4, 5, 6, 7] def linear_search(value, iterable): f ...
- 【原创】改进的大马webshell,过市面上任何防护
因为之前使用的webshell大马很多都没用了,都被安全防护拦截了,所以通过几个大牛的指点和网上的教程整理而成自己做的增强版的webshell大马,我这个是源码,部分无加密! <?php $pa ...
- uni-app之导航配置pages.json
1.基础配置,各个页面都要在这里边引入. 2.基础配置,头部导航左右上脚的buttons设置. 3.如果没有权限展示底部导航的需求,可以直接在此文件配置底部导航.
- nginx url默认去掉index.php
- MySQL 新建用户并赋予权限
创建一个用户: create user 'oukele'@'%' identified by 'oukele'; 提示下面所列出的信息的话,得刷新一下权限表 The MySQL server is r ...
- AtCoder Grand Contest 032 B - Balanced Neighbors——构造
题意 B - Balanced Neighbors 给定一个整数 $N$($3\leq N \leq 100$),构造一个顶点编号为 $1...N$ 的无向图,需满足如下两个条件: 简单图且连通 存在 ...