ThinkPHP学习 --- 06数据库与模型 --------------07查询数据 -----------------学习

这篇博客介绍了ThinkPHP框架中数据库与模型的使用,包括非模型定义下table和name的区别,模型定义中的查看原生SQL语句,以及查询数据的各种方法,如查询单条信息、捕获异常、获取多列数据等。强调了在查询时table需要加上前缀,而name则不需要。

https://www.bilibili.com/video/BV17J411K7Zd?p=1

06. 数据库与模型

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

1. 非模型定义

1. table和name的区别。

在这里插入图片描述
在这里插入图片描述table这个模式我们要使用 完整的表明,,尽管我们已经用了前缀了。我们再使用name方法试一试,
在这里插入图片描述

name方法:

在这里插入图片描述

在这里插入图片描述

修改之后:

在这里插入图片描述
在这里插入图片描述

2. 模型定义:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

MVC齐活了啊,

在这里插入图片描述
在这里插入图片描述

查询一下看看。

在这里插入图片描述
在这里插入图片描述

1. 查看原生的SQL语句:

在这里插入图片描述

在这里插入图片描述
我们直接刷新,他没有反应,这是因为,我们是用json格式输出的。原生显示是需要html的。所以我们后面要去掉json格式。

在这里插入图片描述

点击一下,就能够看到了

在这里插入图片描述
在这里插入图片描述

07. 查询数据

在这里插入图片描述

1.基本查询:

1. 查询单条信息。

带上前缀!!!1
在这里插入图片描述在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

默认就搜索一条,且默认是第一条。

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1. 捕获异常

正常查询不到,会返回null

在这里插入图片描述

,这样用 用try,catch 捕获异常,

在这里插入图片描述

返回空数组

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2. 获取多列数据

在这里插入图片描述
在这里插入图片描述

2. 多列异常

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

可见,查询多列还是单列都是最后的方法决定的。 这就是 面向对象设计的思想。

table需要加上前缀, name 不用加前缀,

在这里插入图片描述

2. 更多方法:

在这里插入图片描述

1. 查询单个值,不是 * 了。

在这里插入图片描述
在这里插入图片描述

这时候是字符串形式,就不用 json输出了,,

在这里插入图片描述
在这里插入图片描述

2. 查询指定列的值。

在这里插入图片描述
在这里插入图片描述

一、自己操作,写的

1. select 数据表中所有信息

在这里插入图片描述

一个数组中有很多个元素,每一个元素又是一个数组,,所以,如果要获取数据的化,需要双层foreach来获取数据。

在这里插入图片描述

这里是连接数据表了。我们可以用python建立数据表,然后将数据爬进去,然后think PHP将数据弄出来。

    public function do_login()
    {
        $request = request();

        echo "操作login操作"."\n";
        if($request->param('method') == 'login')
        {
            $data = Db::name('user')->select();

            foreach ($data as $key=>$value)
            {
//              dump($key);
//              dump($value);
                foreach ($value as $key=>$value)
                {
                    echo $key." : ".$value."<br>";
                }
                echo "<br>";
            }

//            dump($data);
            return "处理登陆";

在这里插入图片描述

2. select表中 的某一列:

    public function select_column()
    {
//        $col = Request::instance()->param("column");
        $col = input("get.column");# 助手函数,获得get方法传入的column参数的值,
        $data=Db::name('user')->column('name');
//        return json($data);
        var_dump($data);
    }

在这里插入图片描述

然后是json样式:

    public function select_column()
    {
//        $col = Request::instance()->param("column");
        $col = input("get.column");
//        dump($col);

        $data=Db::name('user')->column('name');
        return json($data);
//        var_dump($data);
    }

在这里插入图片描述

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值