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等等,而且每种数据库语 ...
随机推荐
- 【原】Centos6.5下cdh4.6 hive安装部署
1.前提条件: 只需要选择一台服务器即可,这里选择安装在namenode上:安装用户为cloud-user 2.安装包: sudo yum install -y hive hive ...
- Uber即将进驻扬州啦,车主火热招募中!
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- select、poll、epoll三组IO复用
int select(int nfds,fd_set* readfds,fd_set* writefds,fd_set* exceptfds,struct timeval* timeout)//其中n ...
- oracle sysdba用户远程登录
sysdba远程登录需要两个条件: 1.remote_login_passwordfile =exclusive时,启用口令文件,允许远程登录: 查看remote_login_passwordfile ...
- 使用JUnit测试java代码
Junit 单元测试实验报告 一.实验环境 MyEclipse2014.Junit4.10 二.实验目的 学会单元测试,在MyEclipse中进行Junit测试 三.实验步骤 1.写出要测试的类 代 ...
- 前端性能优化:使用Data URI代替图片SRC
日期:2013-7-6 来源:GBin1.com 提升页面大小的效率,不仅仅是取决于使用精灵或是压缩代码,给定页面的请求数量在前端性能中也占有了很不小的重量.减少请求可以让你的网站加载更快,而其中一 ...
- 教你Mac OS系统四种改动Hosts文件的方法
使用Mac OS X系统的用户.在某些时候可能遇到了须要改动系统Hosts文件的情况,那么Mac OS系统怎样改动Hosts文件呢?和Windows系统有何差别呢?我们知道事实上改动Hosts文件仅仅 ...
- [AngularJS + Webpack] Uglifying your JavaScript
Angular requires some careful consideration when uglifying your code because of how angular's depend ...
- android 51 有序广播
无序广播:一条广播发送出去,多个接收者接收没有顺序.有序广播:广播接收者可以设置优先级,优先级高的先收到广播.有序广播可以设置优先级. mainActivity.java package com.sx ...
- 《Linux内核分析》-----张超
http://www.cnblogs.com/zhangchao0515/category/797954.html MOOC课程 http://mooc.study.163.com/course/US ...