聚合查询 在应用中我们经常会用到一些统计数据,例如当前所有(或者满足某些条件)的用户数.所有用户的最大积分.用户的平均成绩等等,ThinkPHP为这些统计操作提供了一系列的内置方法,包括: 用法示例: 获取用户数: Db::table('think_user')->count(); // 助手函数 db('user')->count(); 或者根据字段统计: Db::table('think_user')->count('id'); // 助手函数 db('user')->coun…
查询方法 条件查询方法 where 方法 可以使用 where 方法进行 AND 条件查询: Db::table('think_user') ->where('name','like','%thinkphp') ->where('status',1) ->find(); 多字段相同条件的 AND 查询可以简化为如下方式: Db::table('think_user') ->where('name&title','like','%thinkphp') ->find();…
视图查询 视图查询可以实现不依赖数据库视图的多表查询,并不需要数据库支持视图,例如: Db::view('User','id,name') ->view('Profile','truename,phone,email','Profile.user_id=User.id') ->view('Score','score','Score.user_id=Profile.id') ->where('score','>',80) ->select(); 生成的SQL语句类似于: 注意,…
创建表 # models.py form django.db import models class Book(models.Model): # 表名book,django会自动使用项目名+我们定义的表名 # 如没有自定义主键,django会自动添加一个主键,字段名id 自增 name = models.CharField(max_length=20) # 字段名name 类型 vachar(20) price = models.IntegerField() # 字段名price 类型int p…
一.关联模型 ( RelationMondel ) 1.数据查询 ① HAS_ONE 查询 创建两张数据表评论表和文章表: tpk_comment , tpk_article .评论和文章的对应关系为,一条评论 id 对应一篇文章,为 ONE_TO_ONE 关系 ( 一对一 ).评论表的结构为: 其中 aid 字段与文章表的 id 字段对应.打开自定义模型 ArticleModel,让模型继承于 RelationModel,然后定义成员属性 $_link,代码: ArticleModel.cla…
thinkPHP如果要对数据库操作,一般来说首先要做的是在配置文件中链接数据库,然后用M方法实例化一张表,然后就是对表的操作了 可以开启调试功能查看程序执行的sql语句: 1.开启调试功能(默认是已经开启过的) define('APP_DEBUG',true) 2.设置配置文件,开启页面trace(注意:如果没有在控制器里输出模板,不会出现调试小图标,即要写:$this->display();) 'SHOW_PAGE_TRACE'=>TRACE 查询操作:例如: (1)基本的where语句查询…
存储过程 5.0支持存储过程,如果我们定义了一个数据库存储过程 sp_query ,可以使用下面的方式调用: $result = Db::query('call sp_query(8)'); 返回的是一个二维数组,也可以使用参数绑定,例如: $result = Db::query('call sp_query(?)',[8]); // 或者命名绑定 $result = Db::query('call sp_query(:id)',['id'=>8]); 数据集 数据库的查询结果也就是数据集,默认…
ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操 作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理.采用 PDO方式,目前包含了Mysql.SqlServer.PgSQL.Sqlite等数据库的支持. 如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有多种定义方式. 一.配置文件定义 二.方法配置 三.模型类定义 配置参数参考 一.配置文件定义 常用的配置方式是在应用目录或者模块目录下面的…
假如你是一位thinkphp的使用者,想必你会觉得thinkphp操作数据库非常方便.现在在你面前有一个非常小的作业,小到完全没有必要用thinkphp去完成它.但是你又觉得不用thinkphp的话,操作数据库非常麻烦.这时,你陷入了左右为难的境况.那么,下面我要分享的这个数据库操作类,可能会帮助你摆脱这种困境.这个数据库操作类虽然不能说是完全从thinkphp里扣出来的,但多多少少能看到thinkphp当年的影子,使用起来非常类似,真是方便好用啊.好了,马上来演示一下基本用法吧. 首先来演示一…
1.创建数据库:create database --数据库名,不能中文,不能数字开头,不能符号开头 2.删除数据库:drop database-- 数据库名 use student--使用数据库 3.注释:一段 /* */ 一行 -- 4.创建表: create table 表名            create table 表名            (              列名 数据类型,               ...               ...           …