博客列表 >php0523之tp框架数据库CURD

php0523之tp框架数据库CURD

有点凉了
有点凉了原创
2018年05月24日 16:16:48714浏览

实例

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/5/24 0024
 * Time: 下午 2:01
 */

namespace app\index\controller;

use think\Db;

class Demo
{
    public function Select()
    {
        //测试数据库是否连接成功;
//      dump(Db::query("select * from admin"));

//      $sql = "SELECT * FROM emp WHERE salary>500 LIMIT 10";
//      $res = Db::query($sql);
        //通用占位符执行查询
//      $sql = "SELECT * FROM emp WHERE salary>? LIMIT ?";
//      $res = Db::query($sql,[1,10]);
        //通用命名占位符执行查询
        $sql = "SELECT * FROM emp WHERE salary>:salary LIMIT :num";
        $res = Db::query($sql, ['salary'=>[1,\PDO::PARAM_INT], 'num'=>[10,\PDO::PARAM_INT]]);
        dump($res);
    }

    public function Update(){
        $sql = "UPDATE emp SET salary=:salary WHERE id=:id";
        $res = Db::execute($sql,['salary'=>[2547,\PDO::PARAM_INT], 'id'=>[1,\PDO::PARAM_INT]]);
        if ($res>0){
            return "更新成功";
        }else{
            return "更新失败";
        }

    }
}

运行实例 »

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

实例

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/5/24 0024
 * Time: 下午 3:09
 */

namespace app\index\controller;

use think\Db;

class Query
{
    //读操作返回的都是一个二维数组,如果查询满足条件的记录则返回一个空数组
    //写操作返回的是受影响的记录数 是个int值 没有执行结果则返回0
    public function find()
    {//查询单条记录
//        $res = Db::table('emp')->where('id',38)->find();
//        $res = Db::table('emp')->where('id','>',38)->find();
        $res = Db::table('emp')
//            ->field('name,email')//field这两种形式都可以
            ->field(['name' => '姓名', 'email' => '邮箱'])//field这两种形式都可以 这种形式可以设置别名
            ->where('id', '>', 38)
            ->find();
        dump($res);
    }

    public function Select()
    {//查询多条记录
        //        $res = Db::table('emp')->where('id',38)->find();
//        $res = Db::table('emp')->where('id','>',38)->find();
        $res = Db::table('emp')
//            ->field('name,email')//field这两种形式都可以
            ->field(['name' => '姓名', 'email' => '邮箱', 'salary' => '工资'])//field这两种形式都可以 这种形式可以设置别名
            ->where('id', '<=', 100)
//            ->order('salary desc')
//            ->order('salary','desc')
            ->select();
        dump($res);
    }

    public function insert()
    {//新增单条、多条记录
        $data = [
            'name' => '崧厦',
            'grade' => 1,
            'email' => '120476536@qq.com',
            'salary' => 1200
        ];
        $dataMore = [
            [
                'name' => '飞利浦123',
                'grade' => 2,
                'email' => '120476536@qq.com',
                'salary' => 2200
            ],
            [
                'name' => '试试水123',
                'grade' => 3,
                'email' => '120476536@qq.com',
                'salary' => 5600
            ]
        ];

        $res = Db::table('emp')
//            ->data($data)//这里用于插入单条数据传入$data
            ->data($dataMore)//这里用于插入多条数据传入$data
//            ->insert();//执行单条插入,返回结果数可以在这里直接调用insertGetId获取插入的id
            ->insertAll();//执行多条插入,并返回执行个数
        return $res > 0 ? '添加成功' : "添加失败";
    }

    public function update()
    {//更新操作必须基于前置查询,拒绝无条件更新
        $data = [
            'salary' => 100//直接写死价格
        ];
        $data = [
            'salary' => Db::raw('salary+100')//在原来价格基础上加100  注意看手册
        ];
        $res = Db::table('emp')
            ->data($data)
            ->where("id", 38)
            ->update();
        return $res > 0 ? "更新成功" : "更新失败";
    }

    public function delete()
    {//删除跟更新一样必须基于前置查询,不能缺少条件
//        $res = Db::table('emp')
//            ->delete(74804);

//        $data = [
//            74803,
//            74802,
//            74801,
//            74800,
//            74799,
//            74798,
//            74797,
//            74796
//        ];
//        $res = Db::table('emp')
//            ->delete($data);


        $res = Db::table('emp')
            ->where('id',"=",74795)
            ->delete();
        return $res > 0 ? "删除成功" : "删除失败";

    }
}

运行实例 »

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


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