找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 284|回复: 0
打印 上一主题 下一主题

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

[复制链接]

3444

主题

3465

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11142
跳转到指定楼层
楼主
发表于 2018-2-14 05:57:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            用codeigniter也有一段时间了,一直没有做什么总结。现在总结一些Codeigniter操作数据库表的优化写法,虽说不全,但是也确实可以帮助那些刚刚上手CI的同学。
链接数据库
[U]复制代码[/U] 代码如下this->load->database();//手动连接数据库
//连接多数据库
$DB1 = $this->load->database('group_one', TRUE);
$DB2 = $this->load->database('group_two', TRUE);
查询
[U]复制代码[/U] 代码如下://参数绑定形式
$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'];
*/

插入
[U]复制代码[/U] 代码如下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)
更新
[U]复制代码[/U] 代码如下data = array(
                'name' => $name,
                'email' => $email
                );
$where = "id = 1";
$this->db->update('tablename', $data);
$this->db->update_string('tablename', $data, $where);
删除
[U]复制代码[/U] 代码如下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-redis中文文档介绍
  • codeigniter自带数据库类使用方法说明
  • codeigniter数据库操作函数汇总
  • 新浪SAE云平台下使用codeigniter的数据库配置
  • 30个php操作redis常用方法代码例子
  • CI框架入门示例之数据库取数据完整实现方法
  • CodeIgniter针对数据库的连接、配置及使用方法
  • CI框架中redis缓存相关操作文件示例代码
  • db->where()相关用法总结" target="_blank">CI框架中数据库操作函数$this->db->where()相关用法总结
  • CI框架AR数据库操作常用函数总结
  • CI框架(CodeIgniter)操作redis的方法详解
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端