为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
快速入门ThinkPHP 5.0 --模型篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

快速入门ThinkPHP 5.0 --模型篇

乌云龙 PHP开发工程师
难度中级
时长 3小时 0分
  • 数据库查询 

    $res = Db::table('aaa_tablename')->select("sql??,[?,?]") 

    $res = Db::name('tablename')-select("sql??,[?,?]") 

    $res = db(''tablename)->select("sql??,[?,?]") 

    query 全部记录 二维数组

    select 全部记录 二维数组

    find 第一条记录 一维数组

    value 第一条记录 的一个字段值

    column 获取全部的字段值 参数1 返回一维数组 参数2 后面是key 前面是值

    -------------------select 和 column 返回多条记录 未查询到则返回空数组------------------
    ---------------------find 和 value 返回一条记录 未查询到则返回NULL---------------------

    查看全部
  • #返回一个二维数组,在不添加where条件下输出所有数据,如果结果不存在返回一个空数组

            /*$res = Db::table('imooc_user')-> where([

                'id' => "1"

            ])->select();*/

    #一维数组,返回该列下的所有值,如果存在第二个参数,那个以第二个参数的值作为数组的key值,如果结果不存在,返回一个空数组

            //$res = Db::table('imooc_user')->column('username','email');

     

    #find方法,返回一个一维数组,返回一条数据,如不添加where条件默认返回正序排列下id最小的那一条记录,如果结果不存在返回null

    /*        $res = Db::table('imooc_user')->where([

                'id' => "2"

            ])->find();*/

     

    #返回一条记录,某个字段的值,当结果不存在返回null

    //        $res = Db::table('imooc_user')->where(['id'=>'2'])->value('username');


    查看全部
  • 一些操作数据库的方法;看截图


    $res = Db::query("select * from imooc_user where id=?",[1]);


    $res = Db::execute("insert into imooc_user set username =?,password=?,email=?", [

                'imooc',

               md5('imooc'),

               'imooc@qq.com']);


    查看全部
  • 注意!!!
    Db::connect()并没有连接到数据库,只有使用的时候,才连接数据库了

    查看全部
  • 修改数据库配置的四种方式

    1.可在config下的database.php返回配置信息,直接 Db::connect()(如果参数为空,那么会默认使用database.php中的配置连接)

    2.在方法里面引入 use think\Db;Db::connect(array);数组即数据库连接配置

    3.同样是Db::connect("mysql://root:password@127.0.0.1:3306:/databasename#utf8");                  //use think\Db 

    4.在配置文件中,添加一个数组,Db::connect("数组键名");
    //use think\Db

    查看全部
  • 在控制器里面,动态的对数据库配置进行修改;方式之三
    先在config.php里面把要修改的部分,赋值给db_config01这个数组;
    控制器里面的写法是Db::connect('db_config01');

    查看全部
  • 在控制器里面,动态的对数据库配置进行修改;方式之二(字符串方式的配置)

    查看全部
  • 在控制器里面,动态的对数据库配置进行修改;方式之一

    查看全部
  • 第一遍出错了。报错信息为

    ERROR 1055 (42000): Expression #7 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'course.imooc_user.group' which is not functionally dependent on columns in GROUP BY group; this is incompatible with sql_mode=only_full_group_by

    解决方法参考:https://blog.csdn.net/wangyunfeis/article/details/77911704

    查看全部
    1 采集 收起 来源:链式操作

    2018-05-22

  • 使用sql语句的方式查询数据库

    查看全部
  • 使用模型查询
    查看全部
  •    全局自动写入时间戳字段     'auto_timestamp'  => true(不建议开启全局时间戳,如果数据库没有create_time、update_time 字段会报错)

    局部自动写入时间戳  'autoWriteTimestamp'  = true 

    如果数据库不是使用 create_time、update_time 字段、则需要自定义修改时间戳字段

        protected $createTime = '创建时间字段名';

        protected $updateTime = '修改时间字段名';

    查看全部
  • auto (新增及更新的时候自动完成的属性数组)

    insert(仅新增的时候自动完成的属性数组)

    update(仅更新的时候自动完成的属性数组)

    读取器的命名规范是  -> get + 属性名的驼峰命名 + Attr

    修改器的命名规范是  -> set + 属性名的驼峰命名  + Attr

    查看全部
  • create 和 saveAll 返回的是一个对象

    save 返回的是一个影响的行数

    查看全部
  • 三种引入模型类的方法

    1、 use app\模块\model\模型名 (推荐使用,思路清晰易懂)

    2、 use think\Loader  (适合同时使用多个模型)

    3、使用系统助手函数 model   (不推荐使用,避免函数冲突)

    查看全部
    1 采集 收起 来源:什么是模型

    2018-05-15

举报

0/150
提交
取消
课程须知
1、有一定的php基础。 2、对ThinkPHP5 有一定的了解。 3、没有接触过tp5 的学生可以先看下我之前录制的 <快速入门 ThinkPHP5 基础篇>
老师告诉你能学到什么?
1、ThinkPHP5 的数据库操作类 2、ThinkPHP5 的数据模型 3、使用数据模型快速对数据库进行增删改查的操作 4、ThinkPHP5 的自动完成操作 5、模型的自动时间戳和软删除
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!