codeigniter (CI)是一个优秀、敏捷的PHP开源框架,尤其封装了对数据库的操作,很方便,以下是php ci常用的数据库操作,作个记录:

/*
==================================
查询
$query = $this->db_query("SELECT * FROM table");
==================================
*/ //result() 返回对象数组
$data = $query->result(); //result_array() 返回数据
$data = $query->result_array(); //row() 只返回一行对象数组
$data = $query->row(); //num_rows() 返回查询结果行数
$data = $query->num_rows(); //num_fields() 返回查询请求的字段个数
$data = $query->num_fields(); //row_array() 只返回一行数组
$data = $query->row_array(); //free_result() 释放当前查询所占用的内存并删除关联资源标识
$data = $query->free_result(); /*
==================================
插入操作
==================================
*/ //上次插入操作生成的ID
echo $this->db->insert_id(); //写入和更新操作被影响的行数
echo $this->db->affected_rows(); //返回指定表的总行数
echo $this->db->count_all('table_name'); //输出当前的数据库版本号
echo $this->db->version(); //输出当前的数据库平台
echo $this->db->platform(); //返回最后运行的查询语句
echo $this->db->last_query(); //插入数据,被插入的数据会被自动转换和过滤,例如:
//$data = array('name' => $name, 'email' => $email, 'url' => $url);
$this->db->insert_string('table_name', $data); /*
==================================
更新操作
==================================
*/ //更新数据,被更新的数据会被自动转换和过滤,例如:
//$data = array('name' => $name, 'email' => $email, 'url' => $url);
//$where = "author_id = 1 AND status = 'active'";
$this->db->update_string('table_name', $data, $where); /*
==================================
选择数据
==================================
*/ //获取表的全部数据
$this->db->get('table_name'); //第二个参数为输出条数,第三个参数为开始位置
$this->db->get('table_name', 10, 20); //获取数据,第一个参数为表名,第二个为获取条件,第三个为条数
$this->db->get_where('table_name', array('id'=>$id), $offset); //select方式获取数据
$this->db->select('title, content, date');
$data = $this->db->get('table_name'); //获取字段的最大值,第二个参数为别名,相当于max(age) AS nianling
$this->db->select_max('age');
$this->db->select_max('age', 'nianling'); //获取字段的最小值
$this->db->select_min('age');
$this->db->select_min('age', 'nianling'); //获取字段的和
$this->db->select_sum('age');
$this->db->select_sum('age', 'nianling'); //自定义from表
$this->db->select('title', content, date');
$this->db->from('table_name'); //查询条件 WHERE name = 'Joe' AND title = 'boss' AND status = 'active'
$this->db->where('name', $name);
$this->db->where('title', $title);
$this->db->where('status', $status); //范围查询
$this->db->where_in('item1', 'item2');
$this->db->where_not_in('item1', 'item2'); //匹配,第三个参数为匹配模式 title LIKE '%match%'
$this->db->like('title', 'match', 'before/after/both');
$this->db->not_like(); //分组 GROUP BY title, date
$this->db->group_by('title', 'date'); //限制条数
$this->db->limit(0, 20);

codeigniter 对数据库的常用操作的更多相关文章

  1. nodejs 进阶:封装所有对数据库的常用操作

    //这个模块里面封装了所有对数据库的常用操作 var MongoClient = require('mongodb').MongoClient; var settings = require(&quo ...

  2. linux下对应mysql数据库的常用操作

    ssh管理工具连接mysql数据库. 一.连接mysql数据库: 通过shh管理工具,登录linux的用户名,密码,进入ssh的命令行界面后,执行如下命令: mysql -u 数据库用户名 -p 然后 ...

  3. linux 中数据库的常用操作

    1-连接数据库: mysql -h localhost -u jiangbiao -p xxxxx@xxx:~$ mysql -h localhost -u jiangbiao -p Enter pa ...

  4. mysql数据库中常用操作汇总

    一.查询数据库的基本信息: 1.    /* 查询数据库 ‘boss’ 所有表及注释 */SELECT TABLE_NAME,TABLE_COMMENT FROM information_schema ...

  5. MySQL数据库的常用操作

    /*创建表*/ CREATE TABLE tb_test ( id ) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键', name ) NOT NULL ...

  6. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  7. DBA必备:MySQL数据库常用操作和技巧

    DBA必备:MySQL数据库常用操作和技巧 2011-02-25 15:31 kaduo it168 字号:T | T MySQL数据库可以说是DBA们最常见和常用的数据库之一,为了方便大家使用,老M ...

  8. 在shell终端操作oracle数据库的常用命令

    这里面是在一个项目中用到的操作oracle数据库的常用linux命令,因为当时无法用plsql远程连接,大部分操作都需要在命令行窗口进行,总结一下 第一种方式 (1)先切换至sqlplus [orac ...

  9. sql server建库建表(数据库和数据表的常用操作)

    数据库和数据表 (开发常用 操作) 一,数据库的创建 一个SQLServer 是由两个文件组成的:数据文件(mdf) 和日志文件(ldf),所以我们创建数据库就是要为其指定数据库名.数据文件和日志文件 ...

随机推荐

  1. PHP时间比较和时间差如何计算

    1.<?php 2. $zero1=date(“y-m-d h:i:s”); 3. $zero2=”2010-11-29 21:07:00′; 4. echo “zero1的时间为:”.$zer ...

  2. Unity-Tween

    1.GoKit 免费开源 AssetStore:https://www.assetstore.unity3d.com/en/#!/content/3663 下载地址:https://github.co ...

  3. WinsockExpert+NC抓包上传之拿WEBSHELL

    知识补充: nc上传漏洞在原理上同动网上传漏洞一样,都是利用计算机在读取字符串时,遇到'\0'(00)时,认为字符串结束了,从而丢掉后面的字符串,正如unicode编码特性一样,可被人利用,尽管在这里 ...

  4. PHP中is_numeric函数十六进制绕过0day

    0×00 简介国内一部分CMS程序里面有用到过is_numberic函数,我们先看看这个函数的结构bool is_numeric ( mixed $var )如果 var 是数字和数字字符串则返回 T ...

  5. 转:Java NIO系列教程(四) Scatter/Gather

    Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道)中读取或者写入到Channel的操作.分散(sc ...

  6. TortoiseGit-创建分支、合并分支

    第一步:创建本地分支 点击右键选择TortoiseGit,选择Create Branch-,在Branch框中填写新分支的名称(若选中"switch to new branch"则 ...

  7. Song Jiang's rank list

     Song Jiang's rank list Time Limit:1000MS     Memory Limit:512000KB     64bit IO Format:%I64d & ...

  8. 从客户端中检测到有潜在危险的 Request.Form 值。

    使用富文本编辑器是经常会遇到这个问题,在MVC中解决方法很简单只要在对应的action上添加[ValidateInput(false)]即可

  9. 诠释Linux中『一切都是文件』概念和相应的文件类型

    导读 在 Unix 和它衍生的比如 Linux 系统中,一切都可以看做文件.虽然它仅仅只是一个泛泛的概念,但这是事实.如果有不是文件的,那它一定是正运行的进程. 要理解这点,可以举个例子,您的根目录( ...

  10. 利用LineRenderer画出一个圆,类似于lol中的攻击范围

    http://www.unity蛮牛.com/blog-5945-1409.html 本人大四狗,学unity半年有余,写此文章纯粹记录自己的心得. 废话不多说,进入主题.... 效果如图: 首先要理 ...