首先我们需要进行一下配置,这里需要修改的文件为application目录下的config目录下的database.php文件,我们修改相应的配置项,比如这里是我的配置情况:

通常我们在操作数据库之前,首先需要进行数据库的加载,通常代码内容如下:
$this->load->database();
在连接之后,我们可以使用$this->db来获取当前的数据库对象,然后我们就可以对它进行数据库的操作了。
PS:对于查询操作,一般我们得到的都是一个结果集,我们还需要调用一下result()这个方法来或许结果集。

来做一次数据的查询,要获取user表的数据,创建一个Db控制器,然后写一个demo方法,整个文件的代码如下:

我们就可以看到它数据取出后的结果了

其他框架转过来的朋友们会不习惯每次查询后都需要写一个result()来获取结果集,但是不得不承认的是这种方式也有不少优点的,而且它本身也有比较丰富的方法可供我们调用:
(1)num_rows()用来获取总的行数。
(2)list_fields()用来获取所有的字段数。
(3)result_array()用数组的方式来获取数据。
(4)result_object()用对象的方式来获取数据。
(5)row()用来获取一行数据。
(6)next_row()用来获取下一行数据。
(7)first_row()用来获取第一行数据。
(8)previous_row()用来获取上一行数据。

在Db控制器中新建一个result()方法,然后书写如下代码:

在上面的代码中,直接执行了一条SQL语句,然后我们用一个循环的方式来输出每条记录的内容,需要说明的是,这里的每条记录默认返回的格式是对象格式。然后我们就会看到具体的输出如下:

增删改查

首先是增加数据,我们可以使用insert()方法来插入数据,它的第一个参数是表名,第二个参数是一个数组。

在上面,我们向role表中插入了一条数据

我们也可以进行批量插入,这个时候我们可以使用insert_batch()方法,它的第一个参数也是一个表名,第二个参数可以是一个多维数组。代码范例如下:

这里表示成功插入的行数

对于查询数据来说,则有比较多的方法,下面是几个常用的方法:
(1)from()表示选择的表
(2)select()表示要选择哪些字段,可以用数组表示,也可以用逗号分隔多个字段的字符串,如果为空则表示选择所有字段,相当于填写了"*"
(3)distinct()表示去除重复的记录
(4)limit()表示要获取多少条记录
(5)offset()表示选择的偏移量
(6)where()表示where条件,一般第一个参数是字段名,第二个参数是值,也可以把第一个参数设置为整个条件
(7)group_by()表示按哪些字段进行分组
(8)order_by()表示按哪些字段进行排序,第一个参数为字段名,第二个参数用'asc'表示升序,用'desc'表示降序
(9)join()表示进行表的连接,第一个参数为连接的表名,第二个参数为连接的条件
(10)get()表示进行获取操作,在它之后通常跟result()来检索出具体的结果
其实具体的方法还有很多,这里只是列举了比较常用的几个

不过对于查询来说,它所涉及的方法还是有点太多了,很多功能我们还是需要去查看手册。

对于数据的删除,我们可以使用delete()来执行,我们可以用from()来选择表,用where()来表示条件,用delete()来表示最后的删除。

对于数据的修改,我们可以使用update()来进行修改,我们可以使用from()来选择要更新的表,我们可以用where来表示更新的条件,我们可以用set()表示要更新的数据。

CodeIgniter-CI之MySQL的更多相关文章

  1. CodeIgniter(CI)框架中的验证码

    在CodeIgniter框架中,CI本身自带了验证码,但是查看文档的时候,发现: 需要新建一个表,用来存储验证码信息.因为习惯了session存储验证码信息,所以我把我认为比较好看的验证码应用在了CI ...

  2. PHP开发框架--CodeIgniter(CI)使用总结

    在开发的时候框架是十分重要的,目前有很多框架,WPF中比较出名的MVVM等,这些都是用来组织开发文件的,就是把一个应用分开来写.下面总结一下CI框架的用法. CI框架是基于MVC的,分别是 1.Mod ...

  3. PHP CodeIgniter(CI)去掉 index.php

    去掉CodeIgniter(CI)默认url中的index.php的步骤: 1.打开apache的配置文件,conf/httpd.conf : LoadModule rewrite_module mo ...

  4. Codeigniter CI 框架的一些优化思考

    前段时间使用CI做了两个小项目,对CI的流程和设计理念也有了一些新的认识.CI架构的一些基本优化这里就不做介绍了,如搬离system 文件夹等. 最近有一个稍微大一点的系统,也准备拿CI来做.设计时遇 ...

  5. 纯PHP Codeigniter(CI) ThinkPHP效率测试

    最近一直想做一个技术类的新闻站点,想做的执行效率高些,想用PHP做,一直纠结于用纯PHP做还是用CI或者THINKPHP.用纯PHP效率高,缺点 n多,比如安全方面.构架方面等等等等:用CI.thin ...

  6. CodeIgniter(CI 3.0)分页类实践记录

    最近在学习B/S,选择了PHP CI框架作为切入点. 在尝试制作个人CMS的时候遇到了需要分页的情况,网上好像搜不到3.0版本以上的例子,下面附上本地实验的代码,供参考. 数据库情况如下: 首先看Co ...

  7. CodeIgniter (CI)框架中的数据库查询汇总

    引言: 前两天业务涉及到一个拉取答题排行榜的需求,数据库里数据是这样的: 同一个人可能提交过多次成绩,所以同一个人可能会有多次记录: 同一个人提交的多次成绩中可能有至少两次成绩是一样的. 于是,查询的 ...

  8. php codeigniter (CI) oracle 数据库配置-宋正河整理

    database.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 $active_group = 'default'; $active_record ...

  9. **汇总CodeIgniter(CI)的数据库操作函数

    //查询: $query = $this->db_query("SELECT * FROM table"); ================================ ...

  10. 搭建LNMP+CI环境

    首先搭建 LNMP 的服务器环境 安装 Nginx, MySQL 和 PHP 软件包,执行以下命令 yum install -y nginx mariadb-server mariadb php ph ...

随机推荐

  1. OC第六课

    主要内容:Block(Block语法.Block使用.Block实现数组排序) 一.Block语法 Block:块语法.本质上是匿名函数(没有函数名称的函数),和函数指针非常相似 函数回想: 实现了某 ...

  2. Mac safari 下iframe的hash取不到BUG

    RT http://192.168.1.66/salaryl#abc 这样的链接是取不到hash的, 需要在最后加上斜杠,如下:http://192.168.1.66/salaryl/#abc fuc ...

  3. P1993 小K的农场 差分约束系统

    这个题是一道差分约束系统的裸题,什么是差分约束系统呢?就是给了一些大小条件,然后让你找一个满足的图.这时就要用差分约束了. 怎么做呢?其实很简单,就是直接建图就好,但是要把所有条件变为小于等于号,假如 ...

  4. bzoj1123 [POI2008]BLO——求割点子树相乘

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1123 思路倒是有的,不就是个乘法原理吗,可是不会写...代码能力... 写了一堆麻麻烦烦乱七 ...

  5. WPF:通过Window.DataContext实现窗口间传值

    通过Window.DataContext实现窗口之间的传值,特别是跨窗口控件的联动,具有无可比拟的优势.实现方法如下: 1.  MainWindow.xaml,在Window.DataContext中 ...

  6. Swift备忘录

    Swift 备忘录 2015-4 一.简介 1.Swift 语言由苹果公司在2010年7月开始设计,在 2014 年6月推出,在 2015 年 12 月 3 日开源 2.特点(官方): (1)苹果宣称 ...

  7. 基于移动Web的视图引擎实现

    第一步:移动视图引擎实现 using System.Web.Mvc; /// <summary> /// 移动版View引擎 /// </summary> public cla ...

  8. [BZOJ2017][Usaco2009 Nov]硬币游戏(要复习系列)

    又是DP? 好吧,或者说是博弈论,但是我不会啊. 先搞个O(n^3)的记忆化搜索,然后瞎搞好像发现两个状态几乎一样? 竟然过了样例,然后竟然A了... #include<iostream> ...

  9. EditPlus 2:用空格替换制表符

    打开软件点击菜单栏上的Tools(工具),在点击perferences(外观),再点击左边栏的File->Setting & Syntax(文件->设置与符号),再点击右栏的Tab ...

  10. B - Is your horseshoe on the other hoof?

    Problem description Valera the Horse is going to the party with friends. He has been following the f ...