codeigniter數(shù)據(jù)庫操作函數(shù)匯總

字號:


    網(wǎng)上倒是有不少codeigniter數(shù)據(jù)庫操作地介紹,這里做一個匯總.
    代碼如下:
    //查詢: 
    $query = $this->db_query(select * from table);
     ==================================
    //result() 返回對象數(shù)組
    $data = $query->result();
    //result_array() 返回數(shù)據(jù)
    $data = $query->result_array();
    //row() 只返回一行對象數(shù)組
    $data = $query->row();
    //num_rows() 返回查詢結(jié)果行數(shù)
    $data = $query->num_rows();
    //num_fields() 返回查詢請求地字段個數(shù)
    $data = $query->num_fields();
    //row_array() 只返回一行數(shù)組
    $data = $query->row_array();
    //free_result() 釋放當(dāng)前查詢所占用地內(nèi)存并刪除關(guān)聯(lián)資源標(biāo)識
    $data = $query->free_result();
    /*
     ==================================
     插入操作
     ==================================
    */
    //上次插入操作生成地id
    echo $this->db->insert_id();
    //寫入和更新操作被影響地行數(shù)
    echo $this->db->affected_rows();
    //返回指定表地總行數(shù)
    echo $this->db->count_all('table_name');
    //輸出當(dāng)前地數(shù)據(jù)庫版本號
    echo $this->db->version();
    //輸出當(dāng)前地數(shù)據(jù)庫平臺
    echo $this->db->platform();
    //返回最后運(yùn)行地查詢語句
    echo $this->db->last_query();
    //插入數(shù)據(jù),被插入地數(shù)據(jù)會被自動轉(zhuǎn)換和過濾,例如:
    //$data = array('name' => $name, 'email' => $email, 'url' => $url);
    $this->db->insert_string('table_name', $data);
    /*
     ==================================
     更新操作
     ==================================
    */
    //更新數(shù)據(jù),被更新地數(shù)據(jù)會被自動轉(zhuǎn)換和過濾,例如:
    //$data = array('name' => $name, 'email' => $email, 'url' => $url);
    //$where = author_id = 1 and status = 'active';
    $this->db->update_string('table_name', $data, $where);
    /*
     ==================================
     選擇數(shù)據(jù)
     ==================================
    */
    //獲取表地全部數(shù)據(jù)
    $this->db->get('table_name');
    //第二個參數(shù)為輸出條數(shù),第三個參數(shù)為開始位置
    $this->db->get('table_name', 10, 20);
    //獲取數(shù)據(jù),第一個參數(shù)為表名,第二個為獲取條件,第三個為條數(shù)
    $this->db->get_where('table_name', array('id'=>$id), $offset);
    //select方式獲取數(shù)據(jù)
    $this->db->select('title, content, date');
    $data = $this->db->get('table_name');
    //獲取字段地最大值,第二個參數(shù)為別名,相當(dāng)于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');
    //匹配,第三個參數(shù)為匹配模式 title like '%match%'
    $this->db->like('title', 'match', 'before/after/both');
    :