Codeigniter操作数据库表的优化写法总结


Posted in PHP onJune 12, 2014

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

链接数据库

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

查询

//参数绑定形式
$sql = "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?"; 
$this->db->query($sql, array(3, 'live', 'Rick'));//多结果标准查询
$query = $this->db->query($sql); //自定义
$query = $this->db->get('tablename'); //便捷形式,相当于:SELECT * FROM tablename
$query = $this->db->get('tablename', 10, 20); // 相当于: SELECT * FROM tablename LIMIT 20, 10
$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);  //便捷插入$this->db->insert_id() //刚插入的id
$this->db->affected_rows() //影响的行数(update,insert)

更新

$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); // Produces:
// "DELETE FROM tablename WHERE name = '$name' AND title = "$title""
$this->db->truncate('tablename'); //清空表
// Produce: TRUNCATE tablename
 
-----------------------------------------------------
(where)
-------
$array = array(
                'name' => $name, 
                'title' => $title
                );
$this->db->where($array); 
// Produces: "WHERE name = '$name' AND title = "$title"" 
-----------------------------------------------------
$this->db->count_all('tablename'); //表中记录总行数
-----------------------------------------------------
$query->free_result() //释放资源
PHP 相关文章推荐
BBS(php & mysql)完整版(四)
Oct 09 PHP
收集的PHP中与数组相关的函数
Mar 22 PHP
PHP 采集心得技巧
May 15 PHP
PHP JSON 数据解析代码
May 26 PHP
(PHP实现)只使用++运算实现加法,减法,乘法,除法
Jun 27 PHP
PHP实现Soap通讯的方法
Nov 03 PHP
php通过ksort()函数给关联数组按照键排序的方法
Mar 18 PHP
如何使用PHP给图片加水印
Oct 12 PHP
php使用include 和require引入文件的区别
Feb 16 PHP
Laravel 5.4向IoC容器中添加自定义类的方法示例
Aug 15 PHP
PHP实现的AES加密、解密封装类与用法示例
Aug 02 PHP
PHP判断是否是微信打开还是浏览器打开的方法
Feb 27 PHP
codeigniter数据库操作函数汇总
Jun 12 #PHP
使用PHP函数scandir排除特定目录
Jun 12 #PHP
使用配置类定义Codeigniter全局变量
Jun 12 #PHP
CodeIgniter输出中文乱码的两种解决办法
Jun 12 #PHP
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
Jun 12 #PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
Jun 12 #PHP
php 过滤英文标点符号及过滤中文标点符号代码
Jun 12 #PHP
You might like
Php做的端口嗅探器--可以指定网站和端口
2006/10/09 PHP
PHP执行速率优化技巧小结
2008/03/15 PHP
PHP转换文件夹下所有文件编码的实现代码
2013/06/06 PHP
php 根据url自动生成缩略图并处理高并发问题
2014/01/23 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
PHP的Yii框架使用中的一些错误解决方法与建议
2015/08/21 PHP
Yii2.0高级框架数据库增删改查的一些操作
2015/11/16 PHP
PHP生成二维码与识别二维码的方法详解【附源码下载】
2019/03/07 PHP
php并发加锁问题分析与设计代码实例讲解
2021/02/26 PHP
用javascript实现无刷新更新数据的详细步骤 asp
2006/12/26 Javascript
js+HTML5实现视频截图的方法
2015/06/16 Javascript
老生常谈JQuery data方法的使用
2016/09/09 Javascript
vue实现可增删查改的成绩单
2016/10/27 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
jQuery实现弹幕效果
2017/02/17 Javascript
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
如何在vue项目中嵌入jsp页面的方法(2种)
2020/02/06 Javascript
[29:10]Ti4 冒泡赛第二天 NEWBEE vs Titan 3
2014/07/15 DOTA
python中函数传参详解
2016/07/03 Python
python多线程socket编程之多客户端接入
2017/09/12 Python
几种实用的pythonic语法实例代码
2018/02/24 Python
Python对多属性的重复数据去重实例
2018/04/18 Python
Python pip替换为阿里源的方法步骤
2019/07/02 Python
django中forms组件的使用与注意
2019/07/08 Python
python读取指定字节长度的文本方法
2019/08/27 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
2020/06/17 Python
Python 忽略文件名编码的方法
2020/08/01 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
技校生自我鉴定
2013/12/08 职场文书
卫生院健康教育实施方案
2014/06/07 职场文书
2015新员工试用期工作总结
2014/12/12 职场文书
小学四年级学生评语
2014/12/26 职场文书
2015年煤矿工作总结
2015/04/28 职场文书
毕业论文答辩演讲稿
2015/06/23 职场文书
婚礼家长致辞
2015/07/27 职场文书
公司酒会致辞
2015/07/30 职场文书