博客列表 >以实例演示:查询构造器中的10个最常用的方法 2018年5月23日

以实例演示:查询构造器中的10个最常用的方法 2018年5月23日

墨雨的博客
墨雨的博客原创
2018年05月25日 22:39:21754浏览

以实例演示:查询构造器中的10个最常用的方法
Table(),field(),order(),where(),limit(),insert(),insertAll(),update(),delete(),以及如何获取自增主键和数据打包方法data()

实例

<?php

namespace app\index\controller;
use think\Db;


/**
 * Description of query
 *
 * @author Dell
 */
class Query
{
        //查询一条记录
        public function find() {
                $res = Db::table('kc')->find(10);
                echo '查询kc表中主键id=10的记录<br>';
                print_r($res);
                $res = Db::table('kc')->where('kc_id', '>', 10)->find();
                echo '<br>查询kc表中主键kc_id>10的第一条记录<br>';
                print_r($res);
                $res = Db::table('kc')->field(['mc' => '品名', 'sl' => '数量', 'dw' => '单位', 'dj' => '单价'])
                                ->where('dj', 330)->find();
                echo '<br>查询kc表中单价=330的记录,限定输出字段并设置别名<br>';
                print_r($res);
        }
        //查询多条记录
        public function select() {
                
                $res = Db::table('kc')
                ->field(['mc'=>'品名','dj'=>'单价'])
                ->where('dj','>',200)
                ->order('dj','DESC')
                ->limit(5)
                ->select();
                echo '查询kc表中单价>200的记录,限定输出字段并设置别名,按单价降序排列,输出前5条记录<br>';
               dump($res);
        }       
        // 新增记录
        public function insert(){
                $data = ['mc'=>'方向盘','sl'=>3,'dw'=>'个','dj'=>110];
                $num = Db::table('kc')->insert($data);
                $id = Db::getLastInsID();
                return $num ? '成功添加'.$num.'条记录,ID为:'.$id : ',没有记录增加';
        }
        // 更新:必须基于前置查询,不允许无条件更新
        public function update(){
                $num = Db::table('kc')
                ->where('dj','<',10)
                ->data(['dj'=>Db::raw('dj+5')])
                ->update();
                return $num ? '成功更新'.$num.'条记录' : '没有记录被更新';
        }
        // 删除:不允许无条件删除,删除是一种危险操作,建议使用软删除
        public function delete(){
                $num = Db::table('kc')
                ->where('kc_id',19)
                ->delete();
                return $num ? '成功删除'.$num.'条记录' : '没有记录被删除';
        }
}

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议