db->where( "type ", 3);$this->d ,ci框架在model中,若无特殊修改和定义,使用$this->db,即可操作数据库查:$this->db->select( "* ");$this->db->where( "type ", 3);$this->d ">
ci框架在model中,若无特殊修改和定义,使用$this->db,即可操作数据库
查询数据库方法:
$this->db->select("*");
$this->db->where("type", 3);
$this->db->where("id<>", 10);
$this->db->like('title','中国');
$this->db->order_by("listorder", "DESC");
$this->db->order_by("id", "DESC");
$this->db->limit($pagesize, $start); #和正常的limit相反
$res = $this->dbconnect->get('数据库表名')->result_array();
where in条件查询,ci写法:
$this->db->where_in('id', $column_id);
注意其中的变量是一维数组,不是sql语句中的常规写法。
使用where和or_where组成逻辑或的查询
$this->db->where("id",10);
$this->db->or_where("id", 20;
上面将生成类似 WHERE column1 = 'value1' OR column2 = 'value2' 的SQL语句
如果需要更复杂的条件组合,可以使用 group_start() 和 group_end() 来实现括号分组。例如:
$this->db->where('column1', 'value1');
$this->db->group_start();
$this->db->or_where('column2', 'value2');
$this->db->or_where('column3', 'value3');
$this->db->group_end();
$this->db->get('table_name');
这将生成类似 WHERE column1 = 'value1' AND (column2 = 'value2' OR column3 = 'value3') 的SQL语句。
联表查询:
$this->db->select("a.*");
$this->db->from('a');
$this->db->join('b', "a.id=b.id");
$this->db->where("a.username", $username);
$res = $this->db->get()->result_array();
保存单条数据:
$data = array(
'name'=>$name,
'description'=>$description,
'listorder'=>$listorder,
'create_time'=>time(),
'disabled' => $disabled
);
$res = $this->db->insert($this->role_table, $data);
保存多条数据:
$this->db->insert_batch($this->role_auth_table, $column_auth);
其中“$column_auth”是二维数组
修改数据:
$data = array(
'name'=>$name,
'description'=>$description,
'listorder'=>$listorder,
'disabled' => $disabled
);
$res = $this->db->update($this->role_table, $data, array('id'=>$id));
删除数据:
$this->db->delete($this->role_table, array('id'=>$id));
直接使用sql:
$sql = "";
$this->db->query($sql)->result_array();
上一篇:CI3自定义重定向方法
下一篇:CI3框架hook钩子基本方法