扣出thinkphp数据库操作类
假如你是一位thinkphp的使用者,想必你会觉得thinkphp操作数据库非常方便。现在在你面前有一个非常小的作业,小到完全没有必要用thinkphp去完成它。但是你又觉得不用thinkphp的话,操作数据库非常麻烦。这时,你陷入了左右为难的境况。那么,下面我要分享的这个数据库操作类,可能会帮助你摆脱这种困境。这个数据库操作类虽然不能说是完全从thinkphp里扣出来的,但多多少少能看到thinkphp当年的影子,使用起来非常类似,真是方便好用啊。
好了,马上来演示一下基本用法吧。
首先来演示一下查询方法:
$db->table('user')->limit(10)->order('id desc')->select();
相当于执行下面的sql语句,并返回二维数组。
SELECT * FROM `hoho_user` ORDER BY id desc LIMIT 10
$where['user_name'] = array('like','%ly%'); $where['credit'] = array('gt',100); $db->table('user')->where($where)->limit(10)->select();
相当于执行下面的sql语句,并返回二维数组。
SELECT * FROM `hoho_user` WHERE ( `user_name` LIKE '%ly%' ) AND ( `credit` > 100 ) LIMIT 10
$where['credit'] = array(array('gt',100),array('eq',0),'or'); $db->table('user')->where($where)->limit(10)->select();
相当于执行下面的sql语句,并返回二维数组。
SELECT * FROM `hoho_user` WHERE ( (`credit` > 100) OR (`credit` = 0) ) LIMIT 10
$db->table('user')->where('id=2')->find();
相当于执行下面的sql语句,并返回一维数组。
SELECT * FROM `hoho_user` WHERE id=2 LIMIT 0,1
再来看看更新语句:
$where['user_name'] = 'lyly'; $data['credit'] = 100; $db->table('user')->data($data)->where($where)->update();
相当于执行下面的sql语句,并返回影响行数。
UPDATE `hoho_user` SET `credit`=100 WHERE ( `user_name` = 'lyly' )
$where['credit'] = array('elt',100); $data['credit'] = array('exp','credit+1'); $db->table('user')->data($data)->where($where)->update();
相当于执行下面的sql语句,并返回影响行数。
UPDATE `hoho_user` SET `credit`=credit+1 WHERE ( `credit` <= 100 )
再来看看新增语句:
$data['user_name'] = 'hoho'; $data['credit'] = 100; $db->table('user')->data($data)->insert();
相当于执行下面的sql语句,并返回自增ID。
INSERT INTO `hoho_user` (`user_name`,`credit`) VALUES ('hoho',100)
最后看看删除语句:
$where['credit'] = 0; $db->table('user')->where($where)->delete();
相当于执行下面的sql语句,并返回影响行数。
DELETE FROM `hoho_user` WHERE ( `credit` = 0 )
更多详细用法,有兴趣者可查阅thinkphp手册或自行下载代码研究。
下载地址:http://pan.baidu.com/s/1eQ4lCdk
扣出thinkphp数据库操作类的更多相关文章
- MySQL数据库操作类(PHP实现,支持连贯操作)
<?php /** * Author: suvan * CreateTime: 2018/2/27 * description: 数据库操作类(仅对接MySQL数据库,主要利用MySQLi函数) ...
- 自己封装的ASP.NET的MYSQL的数据库操作类
/** * 作者:牛腩 * 创建时间:2010年3月7日17时35分 * 类说明:对MYSQL数据库的操作类 */ using System; using System.Data; using MyS ...
- Microsoft Access数据库操作类(C#)
博文介绍的Microsoft Access数据库操作类是C#语言的,可实现对Microsoft Access数据库的增删改查询等操作.并且该操作类可实现对图片的存储,博文的最后附上如何将Image图片 ...
- 【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~
最近用php做了点小东东,用上了ezSQL,感觉真的很ez,所以拿来跟大家分享一下~ ezSQL是一个非常好用的PHP数据库操作类.著名的开源博客WordPress的数据库操作就使用了ezSQL的My ...
- Android打造属于自己的数据库操作类。
1.概述 开发Android的同学都知道sdk已经为我们提供了一个SQLiteOpenHelper类来创建和管理SQLite数据库,通过写一个子类去继承它,就可以方便的创建.管理数据库.但是当我们需要 ...
- PHP 数据库操作类:ezSQL
EZSQL类介绍: 下载地址:http://www.jb51.net/codes/26393.htmlezsql是一个小型的快速的数据库操作类,可以让你很容易地用PHP操作各种数据库( MySQL.o ...
- 通用数据库操作类,前端easyui-datagrid,form
实现功能: 左端datagrid显示简略信息,右侧显示选中行详细信息,数据库增删改 (1)点击选中行,右侧显示详细信息,其中[新增].[修改].[删除]按钮可用,[保存]按钮禁用 (2)点击[ ...
- php : mysql数据库操作类演示
设计目标: 1,该类一实例化,就可以自动连接上mysql数据库: 2,该类可以单独去设定要使用的连接编码(set names XXX) 3,该类可以单独去设定要使用的数据库(use XXX): 4,可 ...
- php MySQL数据库操作类源代码
php MySQL数据库操作类源代码: <?php class MySQL{ private $host; //服务器地址 private $name; //登录账号 private $pwd; ...
随机推荐
- axios 处理并发请求
//同时发起多个请求时的处理 axios.all([get1(), get2()]) .then(axios.spread(function (res1, res2) { // 只有两个请求都完成才会 ...
- mysql返回记录的ROWNUM(转)
set @rownum = 0; select (@rownum := @rownum + 1) as rownum, name, scores from user order by scores ...
- 工作总结 返回 json 后台对象中,某一个字段设为string 整个对象转换为json 返回到页面中
JsonRequestBehavior.AllowGet作用 若要允许 GET 请求,请将 JsonRequestBehavior 设置为 AllowGet MVC 默认 Request 方式为 Po ...
- php代码中使用换行及(\n或\r\n和br)的应用
浏览器识别不了\n或\r\n,这两个换行符是文本换行符,文本文件有效;假设须要将结果输出到浏览器或打印到显示器,代码中使用br;假设仅仅是在源码中换行.则使用\n或\r\n,感兴趣的朋友能够了解下,也 ...
- 微信公众号开发之创建菜单栏代码示例(php)
思路很简单:就是先获取access_token,然后带着一定规则的json数据参数请求创建菜单的接口.废话不多讲,直接上代码. class Wechat { public $APPID="w ...
- Atitit.Java exe bat 作为windows系统服务程序运行
Atitit.Java exe bat 作为windows系统服务程序运行 1. 使用SC命令+srvany.exe (不错,推荐)+net start1 1.1. First 创建一个java的运 ...
- 【数据挖掘】分类之decision tree(转载)
[数据挖掘]分类之decision tree. 1. ID3 算法 ID3 算法是一种典型的决策树(decision tree)算法,C4.5, CART都是在其基础上发展而来.决策树的叶子节点表示类 ...
- UML类图中的关系表示
UML类图中的关系和表示方法 类图是用来描述程序中的类以及它们之间的关系的,使用类图可以帮助我们简化对系统的理解.在UML类图中比较常见的关系有六种,它们分别是:依赖.关联.聚合.组合.泛化.实现,这 ...
- .Net中多线程类的使用和总结
lock, Monitor, Thread, Join, BackGroundWorker. 消费者和生产者.Async 委托Invoke TypeHandle中BlockIndex. http: ...
- linux 改动时间和日期date
查看日期和时间 date 改动日期 date -s 月/日/年 date -s 08/15/2015 改动时间 date -s 09:29:33 写入CMOS sudo clock -w 利用ssh同 ...