CI框架教程6——操作数据库表的优化写法

原创 2018年02月07日 10:08:10

        用codeigniter也有一段时间了,一直没有做什么总结。现在总结一些Codeigniter操作数据库表的优化写法,虽说不全,但是也确实可以帮助那些刚刚上手CI的同学。

链接数据库

//手动连接数据库
$this->load->database();
//连接多数据库
$DB1 = $this->load->database('group_one', TRUE);
$DB2 = $this->load->database('group_two', TRUE); 

数据库查询

//参数绑定形式
$sql = "SELECT * FROM table_name WHERE id = ? AND status = ? AND author = ?"; 
$this->db->query($sql, array(3, 1, 'Bob'));

//多结果标准查询
$query = $this->db->query($sql); //自定义
//便捷形式,相当于:SELECT * FROM tablename
$query = $this->db->get('tablename'); 
// 相当于: SELECT * FROM tablename LIMIT 20, 10
$query = $this->db->get('tablename', 10, 20); 


 //对象形式
$query->result()

//数组形式
$query->result_array() 
foreach ($query->result() as $row)
{
    echo $row->title;
    echo $row->name;
    echo $row->email;
}

$query->num_rows() //总条数
$query->num_fields() //字段数

//单结果标准查询
$row = $query->row(); //对象形式
$row = $query->row_array(); //数组形式

$row = $query->row_array();
echo $row['name'];

数据库插入

$data = array(
	'title' => $title,
	'name' => $name
);
//便捷插入
$this->db->insert('tablename', $data); 
$this->db->insert_string('tablename', $data);
 //刚插入的id
$this->db->insert_id();
//影响的行数(update,insert)
$this->db->affected_rows();

数据库更新

$data = array(
	'name' => $name, 
	'email' => $email
);
$where = "id = 1"; 
$this->db->update('tablename', $data); 
$this->db->update_string('tablename', $data, $where);

数据库删除

$array = array(
	'name' => $name, 
	'title' => $title
);
$this->db->delete('tablename', $array); 

// 相当于sql语句:
// "DELETE FROM tablename WHERE name = '$name' AND title = "$title""

$this->db->truncate('tablename'); //清空表
//  相当于sql语句: TRUNCATE tablename

        除此之外,CI框架还有很多数据库组合操作,这些可具体查看CI框架手册。


版权声明:转载时请标注http://blog.csdn.net/zhihua_w

PHP CI 框架教程 (1) -- 安装和简介

1. 安装 从 http://www.codeigniter.com/download 下载,有2个可选版本,可根据需要选择。 下载后解压缩,然后放到你应用服务器对应的程序目录中即可,如MAC (/L...
  • David116
  • David116
  • 2016年06月17日 13:26
  • 5945

CI(CodeIgniter)框架入门教程——第一课 Hello World!

本文转载自:http://www.softeng.cn/?p=45 今天开始,我将在这里连载由我自己编写的《CodeIgniter框架入门教程》,首先,这篇教程的读着应该是有PHP基础...
  • whh306318848
  • whh306318848
  • 2014年03月03日 13:25
  • 5566

自己写的部分CI框架库函数

  • qq754406613
  • qq754406613
  • 2015年08月13日 18:01
  • 632

CI框架简单使用方法

CodeIgniter框架   1、回忆MVC   1.1、M:模型,提供数据,保存数据   1.2、V:视图,只负责显示,表单form   1.3、C:控制器,协调模型和视图   1.4、actio...
  • admin_admin
  • admin_admin
  • 2016年06月27日 17:22
  • 5975

CI框架的curd(增、删、改、查)操作

本文还涉及模型与视图页面只适合借鉴,不适合copy // A . 完成信息的展示(查找) public function getUserData() { // b. 实例化模型的时候也支持简写,传递第...
  • ynw1990
  • ynw1990
  • 2016年09月03日 17:31
  • 979

【ci框架】精通CodeIgniter框架视频教程即将录制。。。

1、codeigniter框架的授课内容安排 2、codeigniter框架的简介 |-----关于框架的概念 |-----使用CI框架的好处 |-----为什么选择CI框架 3、cod...
  • yanhui_wei
  • yanhui_wei
  • 2013年05月04日 13:05
  • 15059

ci框架下载文件

做下载页面,怎么做呢?呵呵代码如下,很简单。ci用户手册中用介绍: $this->load->helper('download'); $data = file_get_contents(APPPAT...
  • love__coder
  • love__coder
  • 2011年01月11日 17:57
  • 4357

CI框架里电商

//控制器 defined('BASEPATH') OR exit('No direct script access allowed'); class index extends CI_C...
  • tianjingang1
  • tianjingang1
  • 2016年11月13日 13:36
  • 247

CI框架学习之六 ( 数据库查询缓存优化 )

CI框架中有个比较好的查询优化,就是数据库缓存优化 1.开启缓存 //在application/config.php中开启 $db['default']['cache_on'] =...
  • wujiangwei567
  • wujiangwei567
  • 2015年03月28日 10:13
  • 1614

CI框架模型中常见的数据库操作

整理的一些常见的数据库操作,很有用。 emptyclass Blog_model extends CI_Model { public $title; public $...
  • php_225869
  • php_225869
  • 2017年06月13日 10:55
  • 223
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CI框架教程6——操作数据库表的优化写法
举报原因:
原因补充:

(最多只允许输入30个字)