ACI操作数据表方法之查询(一)

2016-03-03 19:29:04

ACI 操作数据库方法

请事先在Controller中 __construct 加载你的model ,例如:

如果只有一个可以这样写
$this->load->model(‘Table1_model’);

如果有多个可以这样写
$this->load->model(array(‘Table1_model’,’Table2_model’,’Table3_model’));

接下面就是实战方法,参讲讲WHERE 参数,操作数据库都会用到 where

————————————————————————————————————————————————————


$where = "id = 1 and user_id = 2";//你的条件

以上参数还可以这样玩
$where =  array("id"=>1); //== 'id = 1'
$where =  array("id"=>1,'user_id'=>2); //== 'id = 1 and user_id = 2';

还支持
$where =  array("id >"=>1);// == 'id > 1';
$where =  array("id <>"=>1);// == 'id <> 1';
$where =  array("id <="=>1);// == 'id <= 1';
$where =  array("id ^1"=>1);// == 'id ^ 1';
$where =  array("id +="=>2);// == 'id += 2';
$where =  array("id -="=>2);// == 'id -= 2';
$where =  array("id in("=>"1,2,3");// == 'id in (1,2,3)';

同时也可以这样写
$where["id"] = 1;
$where["user_id"] = 2;

相当于是 // == "id = 1 and user_id = 2";

注意以上都是and关联,如果你想用or,可以这样
$where = "id > 0 or user_id >= 0";//直接输入SQL一样的
————————————————————————————————————————————————————

$where = "id = 1";//你要查询的条件
$field = "*";//你要显示的字段
$orderby = "id desc";//排序方式
$groupby = "";//GROUP

#拉取一条数据
//从table1表中拉取 id=1的数据
$data_info = $this->table1_model->get_one($where , $field, $orderby, $groupby);

//如果拉取到了
if($data_info){
    print_r($data_info);
}else{
    die("信息不存在");
}

————————————————————————————————————————————————————

#拉取多条数据
//从table1表中拉取多条数据

$where = "id > 0 or user_id >= 0";//你要查询的条件
$field = "field1,`field2` as fieldTWO ";//你要显示的字段
$orderby = "id desc,field1 asc";//排序方式
$groupby = "";//GROUP

//从table1表中拉取全部数据
$data_list = $this->table1_model->select($where , $field, $orderby, $groupby);

//如果拉取到了,这个结果是一个多维数组
if($data_list){
    print_r($data_list);
}else{
    die("信息不存在");
}


————————————————————————————————————————————————————

#拉取多条数据带分页
//从table1表中拉取多条数据

$where = "id > 0 or user_id >= 0";//你要查询的条件
$field = "field1,`field2` as fieldTWO ";//你要显示的字段
$orderby = "id desc,field1 asc";//排序方式
$groupby = "";//GROUP
$page_no = 1;
$page_size = 10;//一页显示10条数据
$page_url_format = page_list_url('adminpanel/table1/index',true);

//从table1表中拉取全部数据
$data_list = $this->table1_model->listinfo($where , $field, $orderby,$page_no,$page_size, $groupby,$page_url_format);

//如果拉取到了,这个结果是一个多维数组
if($data_list){
    print_r($data_list);
    echo $this->table1_model->pages;//打印分页控件
}else{
    die("信息不存在");
}