PHP框架_ThinkPHP数据库
目录
1.ThinkPHP数据库配置
2.ThinkPHP数据库实例化模型
3.ThinkPHP数据库CURD操作
4.ThinkPHP数据库连贯操作
1.ThinkPHP数据库配置
App/Conf/config.php
return array(
//连接数据库
//'配置项'=>'配置值'
"DB_TYPE"=>"mysql",//数据库类型
"DB_HOST"=>"localhost",//数据库服务地址
"DB_NAME"=>"shopimooc",//数据库名字
"DB_USER"=>"root",//数据库用户名
"DB_PWD"=>"root",//数据库密码
"DB_PORT"=>"3306",//数据库端口
"DB_PREFIX"=>""//数据库表前缀
);
2.ThinkPHP数据库实例化模型
//1.实例化基础模型
//$user = new Model("admin");//表名,表前缀,数据库连接
$user = M("admin");
$data = $user->select();
dump($data); //2.实例化用户自定义模型
//$user = new UserModel();
$user = D("User");
echo $user->getinfo(); //3.实例化公共模型
$str = new CommonModel();
echo $str->strMake("admin"); //4.实例化空模型
$model = M();
$sql = "select * from admin";
$model->query($sql);//读取 select
$model->execute($sql);//写入 insert update 返回受影响的条数
3.ThinkPHP数据库CURD操作
//增加:
//add 添加一条数据 :添加成功返回id,添加失败返回false
$data = array(
"username" => "iiii",
"password" => "2313",
"email" => "2313"
);
//addAll 添加一条数据 :添加成功返回第一条id,添加失败返回false
$data = M("admin")->add($data); //查询
//select 查询所有
$data = M("admin")->select();
//用字符串查询
$data = M("admin")->where("id>1")->select();
//用数组查询
$arr = array(
"id" => "1",
"username" => "admin"
);
$data = M("admin")->where($arr)->select(); //统计用法
//count 数量
$data = M("admin")->count();
//max 获取最大值 必须传入统计字段名
$data = M("admin")->max("username");
//min 获取最小值 必须传入统计字段名
//avg 获取平均值 必须传入统计字段名
//sum 获取就和 必须传入统计字段名 //更新
//save 更新 成功返回收影响条数,添加失败返回false
$where = "id=18";
$update["username"] = "ad";
$data = M("admin")->where($where)->save($update);
dump($data); //删除
//delete 删除 成功返回收影响条数,添加失败返回false
$where = "id=18";
$data = M("admin")->where($where)->delete();
dump($data);
4.ThinkPHP数据库连贯操作
//1.order排序 order("字符串条件") 多个字符串用,隔开
$data = M("admin")->order("id desc")->select();
//2.field字段筛选 field($string,false) $string多个字段用逗号隔开
$data = M("admin")->field("username")->select();
//3.limit(start,length)
//4.page 分页 page(页码,每页的条数=20)
$data = M("admin")->field("username")->page(1,2)->select();
//5.group 分组操作
//6.having 条件操作
$data = M("admin")->order("id desc")->having("id>10")->select();
//多表查询
//1.table table(array("表名"=>"别名")) 表名需要加前缀
M()->table(array("user"=>"user","userinfo"=>"info"))->where("user.id=info.id")->select();
//2.join
M()->join("userinfo on userinfo.id=user.id")->select();
//3.union("string array",true/false) 查询两张表中完全相同的字段
M()->field("name")->union("select name from userinfo")->select();
//过滤查询
//1.distinct(true/false) 过滤重复的数据
$data = M("admin")->distinct(true)->select();
PHP框架_ThinkPHP数据库的更多相关文章
- JFinalo操作框架racle数据库
JFinal操作框架oracle数据库.在需求configPlugin()方法来配置链路oracle配置数据库 组态JFinal数据库操作窗口小部件,configPlugin方法 在这里,我打开jdb ...
- ThinkPhp框架的数据库操作(查询)
TP框架有一套自己的数据库操作的代码,包括数据库的增.删.改.查.本文主要讲解TP框架的数据库查询操作. 找到入口文件的控制器: 我这里的入口文件是Show文件夹下的控制器. 打开Login控制器. ...
- ThinkPhp框架对“数据库”的基本操作
框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下. 数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是 ...
- Android 自定义Android ORM 框架greenDAO数据库文件的路径
import android.content.Context; import android.content.ContextWrapper; import android.database.Datab ...
- JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一
系列博文: JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一 传送门 JavaWeb_(Mybatis框架)使用Mybatis对表进行增.删.改.查操作_ ...
- TP框架对数据库的基本操作
数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是对数据的增删改的操作,一步步的讲述一下框架对数据库的操作 想要操作数据库,第一步必然是要:链接数据库 一.链接数据库 (1)找 ...
- 基于abp框架的数据库种子数据初始化
目录 基于abp框架的数据库种子数据初始化 1.背景 2.参照 3.解决方案 3.1 初始化数据 3.2 依赖注入方法容器里获取数据库上下文 3.3 封装创建初始化数据列表方法 3.4 数据库中没有的 ...
- laraval框架之数据库不可不吐槽的坑
最近做的项目一直在用laraval框架,有些地方确实很方便,但是有些方面实在是太坑了,就比如这次在数据库里,官方文档写的是 Take note that email is not a required ...
- java之Hibernate框架实现数据库操作
之前我们用一个java类连接MySQL数据库实现了数据库的增删改查操作---------MySQL篇: 但是数据库种类之多,除了MySQL,还有Access.Oracle.DB2等等,而且每种数据库语 ...
随机推荐
- Howto Setup yum repositories to update or install package from ISO CDROM Image
Step # 1: Mount an ISO file Type the following command (replace iso file name with the actual iso fi ...
- MHz 和 Mbps的区别
Hz是频率单位,例如10Hz就是表示每秒运算10次 Mbps是Million bit per secend (表示每秒传输的兆位数)=Mb/s MHz 和 Mbps 并不是同一个单位,关键是看bus的 ...
- intellij安装 配置 创建项目
使用intellij创建项目的整个过程如下: 首先,点击intllij的.exe文件,如果是第一次安装,选择第二个选项即可 Intellij需要license key,可以使用注册机生成相应的name ...
- 读书笔记-《基于Oracle的SQL优化》-第一章-3
优化器: 1.优化器的模式: 用于决定在Oracle中解析目标SQL时所用优化器的类型,以及决定当使用CBO时计算成本值的侧重点.这里的“侧重点”是指当使用CBO来计算目标SQL各条执行路径的成本值时 ...
- C#类型 分类: C# 2015-03-09 08:44 202人阅读 评论(0) 收藏
C# 类型 引言 本文之初的目的是讲述设计模式中的 Prototype(原型)模式,但是如果想较清楚地弄明白这个模式,需要了解对象克隆(Object Clone),Clone其实也就是对象复制.复制又 ...
- 【Android - 框架】之Retrofit的使用
Retrofit是Square公司发布的一个可以应用在Android和Java中的Http客户端访问框架,其底层应用的是OkHttp. 在这个帖子中,我们以下面这个Http请求为例: https:// ...
- win8系统添加开机自启动软件的方法(转)
win8系统添加开机自启动软件的方法,把需要设置开机自启动的软件的快捷方式复制到下面任意路径就ok了.开机自启动路径如下:C:\ProgramData\Microsoft\Windows\Start ...
- zoj 3657 策略题 easy
http://acm.zju.edu.cn/onlinejudge/showProblem.do? problemId=4880 由于是要去牡丹江.是浙大出题,所以找了份浙大的题,第一道水题做的就不顺 ...
- Android如何创建背景透明的Dialog
一:控制Dialog 的背景方法:1.定义一个无背景主题主题<!--去掉背景Dialog--> <style name="NobackDialog" parent ...
- Java基础知识强化之集合框架笔记29:使用LinkedList实现栈数据结构的集合代码(面试题)
1. 请用LinkedList模拟栈数据结构的集合,并测试: 题目的意思是: 你自己的定义一个集合类,在这个集合类内部可以使用LinkedList模拟,使用LinkedList功能方法封装成 ...