menu
more_vert
ThinkPHP的增删改查!

作者:dayu

对表的操作
增加:M(‘表名‘)->add($data); (可以是数组)
删除:M(‘表名‘)->delete($data); (不可以是数组,删除多个有另外的方法)
修改:M(‘表名‘)->save($data);
查询:M(‘表名‘)->select();

增加:add
1、通过关联数组的方式添加:
public function addFun(){
    $data = array(
        ‘goods_name‘=>‘小米‘,
        ‘goods_price‘=>‘3210‘
    );
    $result = M(‘goods‘)->add($data);
}

这里的$result返回结果:
如果主键是自动增加,则返回自动增加的编号;
否则就返回受影响的行数(有多少行发生改变 0 或者 1);
如果SQL语句有错误,则返回 false ;

2、通过AR(active record)方式添加:
public function addFun(){
    $goods = M(‘goods‘);
    $goods->goods_name = ‘山寨机‘;
    $goods->goods_price = 998;
    $result = $goods->add();
}

删除:delete

删除单条数据:

public function deleteFun(){
    //result 返回受影响的行数
    $result = M(‘goods‘)->delect(138);
}

删除多条数据:

public function deleteFun(){
    $result = M(‘goods‘)->delect(‘137,138,140‘);
}

通过where来删除:

$result = M(‘goods‘)->where("goods_price >= 900")->delect();

修改:save



只有知道了主键才能够进行修改,所以修改比增加多了主键。
1,通过关联数组的方法修改:
public function saveFun(){
$data = array(
    ‘goods_name‘=>‘小米‘,
    ‘goods_price‘=>‘3210‘,
    ‘goods_id‘=>‘130‘
);
$result = M(‘goods‘)->save($data);

2,通过AR (active record )方式修改:


public function saveFun(){
    $goods = M(‘goods‘);
    $goods->goods_name = ‘山寨机‘;
    $goods->goods_price = 998;
    $goods->goods_id=130;
    $result = $goods->save();
}

查询:select


简单查询
public function showList(){
    $list = M(‘Goods‘)->select();
    $this->assign(‘list‘,$list);
    $this->display();
}

<volist name="list" id="vo">
{$vo.id}:{$vo.name}
</volist>

条件查询

1、获取一条记录:

$list = M(‘Goods‘)->find();

2、查询主键为 2 的记录:


$list = M(‘Goods‘)->select(2);

3、查询编号为 2、3、4、5 的记录:

$list = M(‘Goods‘)->select(‘2,3,4,5,6‘);

4、where条件查询:

$list = M(‘Goods‘)->where("goods_name like ‘%诺基亚%‘")->select();

$list = M(‘Goods‘)->where("goods_name like ‘%诺基亚%‘ and goods_price >= 3000")->select();

5、limit条件查询:

$list = M(‘Goods‘)->limit(‘5‘)->select();

这里的查询的前5条,正常的写法是limit(0,5),但如果是从零开始可以这样写 limit(5);
查询两条,但是从2开始 可以这样写 limit(2,5);

6、order排序:

$list = M(‘Goods‘)->limit(‘5‘)->order(‘goods_price desc‘)->where("goods_price >=50")->select();

7、指定字段进行查询:

$list = M(‘Goods‘)->field(‘goods_name,goods_price‘)->select();

增删改查终极方法:直接写SQL语句:
查询数据库使用 query() 方法:
public function sqlFun(){
    //查询
    // 空模型  是sw_goods不是goods,要全名
    $list = M()->query("select * from sw_goods");
}

增/删/改 使用execute()方法:

public function sqlFun(){
    //增 删 改
    $list = M()->query("delete * from sw_goods where goods_id=‘135‘");
}

这里的 result 返回的是受影响的行数;


ThinkPHP的增删改查!

原文地址:http://www.cnblogs.com/e0yu/p/7239586.html



Processed Time:0.18585395812988

_REQUEST:
Array
(
    [0] => read
    [1] => 94398
)
_SESSION:
Array
(
    [fid] => 4
)