Yii createCand CURD 동작

본 고 는 업무 기록 으로 사용 되 는데 Yii 의 Model 을 사용 하지 않 고 DB 를 조작 하 는 이 유 를 묻 는 사람 이 있 을 수 있 습 니 다. 이 유 는 간단 합 니 다. Yii 의 Model 쓰기 가 많이 편리 하지만 불필요 한 SQL 을 실행 하고 Yii 의 실행 log 를 열 면 알 수 있 습 니 다.그래서 효율 성 을 위해 DB 서버 의 성능 을 고려 하여 사용 합 니까? create Command 가 좋 습 니 다.
insert
$row = Yii::app()->getDb()->createCommand()->insert('goods', array(
            'good_name' => $goods_name,
            'good_type' => $goods_type,
            'price' => $price,
            'buy_nums' => 0,
            'commit_nums' => 0,
            'create_time' => time(),
        ));

select  단일 테이블 조회
$goodsTypes = Yii::app()->getDb()->createCommand()
            ->select('type_id, type_name')
            ->from('goods_type')
            ->where('status=1')->queryAll();

연표 조회
$goods = Yii::app()->getDb()->createCommand()->from('goods g')
        ->select('g.good_id, g.good_name, gt.type_name, g.price, g.buy_nums, g.commit_nums, g.create_time')
        ->join('goods_type gt', 'g.good_type=gt.type_id')
        ->where('g.`status`=1 and gt.`status`=1')
        ->order('g.create_time desc')
        ->queryAll();

delete
$row = Yii::app()->getDb()->createCommand()
        ->delete('goods', "good_id=:good_id", array(
            ':good_id' => $goods_id,
        ));

update
$row = Yii::app()->getDb()->createCommand()->update('goods', array(
    'good_name' => $goods_name,
    'good_type' => $goods_type,
    'price' => $price,
), "good_id='{$goods_id}'");

좋은 웹페이지 즐겨찾기