tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】

下面是 "tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】" 的完整攻略:

1. 连接数据库

在使用数据库之前,需要先在应用配置文件中进行数据库的相关配置。具体操作如下:

  1. 打开 application 目录下的 config 目录;
  2. 打开 database.php 文件;
  3. 修改相应的数据库连接信息,例如:
return [
    // 数据库类型
    'type'        => 'mysql',
    // 服务器地址
    'hostname'    => 'localhost',
    // 数据库名
    'database'    => 'test',
    // 数据库用户名
    'username'    => 'root',
    // 数据库密码
    'password'    => 'root',
    // 数据库连接端口
    'hostport'    => '3306',
];

2. 添加数据

在 TP5.1 框架中,添加数据主要有两种方式:使用模型添加和原生 SQL 添加。下面将分别进行介绍。

2.1 使用模型添加

在应用的模型中,可以新建一个 User 模型,并添加一个 addUser 方法用于添加用户信息。代码如下:

namespace app\index\model;

use think\Model;

class User extends Model
{
    // 添加用户信息
    public function addUser($data)
    {
        return $this->save($data);
    }
}

在需要添加数据的地方,调用该方法即可。

$user = new User;
$data = [
    'name' => 'test',
    'age'  => 18,
    'sex'  => 1,
];
$result = $user->addUser($data);
if ($result) {
    echo '添加成功';
} else {
    echo '添加失败';
}

2.2 使用原生 SQL 添加

使用原生 SQL 添加数据时,需要借助 TP5.1 框架中的 Db 类。下面是一个添加用户信息的示例代码:

use think\Db;

$result = Db::execute('INSERT INTO `user` (`name`, `age`, `sex`) VALUES (?, ?, ?)', ['test', 18, 1]);
if ($result) {
    echo '添加成功';
} else {
    echo '添加失败';
}

3. 删除数据

在 TP5.1 框架中,删除数据也有两种方式。下面将分别介绍。

3.1 使用模型删除

在模型中新增一个 deleteUser 方法,用于删除用户信息。代码如下:

namespace app\index\model;

use think\Model;

class User extends Model
{
    // 删除用户信息
    public function deleteUser($id)
    {
        $user = $this->get($id);
        if ($user) {
            return $user->delete();
        } else {
            return false;
        }
    }
}

在需要删除数据的地方,调用该方法即可。

$user = new User;
$result = $user->deleteUser(1);
if ($result) {
    echo '删除成功';
} else {
    echo '删除失败';
}

3.2 使用原生 SQL 删除

使用原生 SQL 删除数据时,同样需要借助 TP5.1 框架中的 Db 类。下面是一个删除用户信息的示例代码:

use think\Db;

$result = Db::execute('DELETE FROM `user` WHERE `id` = ?', [1]);
if ($result) {
    echo '删除成功';
} else {
    echo '删除失败';
}

4. 更新数据

在 TP5.1 框架中,更新数据同样有两种方式。下面将分别介绍。

4.1 使用模型更新

在模型中新增一个 updateUser 方法,用于更新用户信息。代码如下:

namespace app\index\model;

use think\Model;

class User extends Model
{
    // 更新用户信息
    public function updateUser($id, $data)
    {
        $user = $this->get($id);
        if ($user) {
            return $user->save($data);
        } else {
            return false;
        }
    }
}

在需要更新数据的地方,调用该方法即可。

$user = new User;
$data = [
    'name' => 'test2',
    'age'  => 20,
    'sex'  => 2,
];
$result = $user->updateUser(1, $data);
if ($result) {
    echo '更新成功';
} else {
    echo '更新失败';
}

4.2 使用原生 SQL 更新

使用原生 SQL 更新数据时,同样需要借助 TP5.1 框架中的 Db 类。下面是一个更新用户信息的示例代码:

use think\Db;

$result = Db::execute('UPDATE `user` SET `name` = ?, `age` = ?, `sex` = ? WHERE `id` = ?', ['test2', 20, 2, 1]);
if ($result) {
    echo '更新成功';
} else {
    echo '更新失败';
}

5. 查询数据

在 TP5.1 框架中,查询数据同样有两种方式。下面将分别介绍。

5.1 使用模型查询

在模型中新增一个 getUserList 方法,用于查询用户列表。代码如下:

namespace app\index\model;

use think\Model;

class User extends Model
{
    // 获取用户列表
    public function getUserList()
    {
        return $this->field(true)->select();
    }
}

在需要查询数据的地方,调用该方法即可。

$user = new User;
$list = $user->getUserList();
foreach ($list as $user) {
    echo $user->id . ' ' . $user->name . ' ' . $user->age . ' ' . $user->sex . '<br>';
}

5.2 使用原生 SQL 查询

使用原生 SQL 查询数据时,同样需要借助 TP5.1 框架中的 Db 类。下面是一个查询用户列表的示例代码:

use think\Db;

$list = Db::query('SELECT * FROM `user`');
foreach ($list as $user) {
    echo $user['id'] . ' ' . $user['name'] . ' ' . $user['age'] . ' ' . $user['sex'] . '<br>';
}

结束语

在 TP5.1 框架中,以上就是常见的数据库操作。其中,使用模型的方式更加方便和灵活,并且更易于维护和扩展;而使用原生 SQL 则更加直接、简单和高效,适用于简单的 CRUD 操作。开发者可以根据实际需求来选择不同的方式。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • Impala和dBASE的区别

    Impala和dBASE的区别 Impala Impala是一个开放源代码SQL引擎,可以直接在Hadoop上对存储在HDFS(Hadoop分布式文件系统)中的数据进行查询和分析。Impala是Cloudera开发的一个SQL查询引擎,可以在Hadoop和HBase上进行SQL查询,支持快速、迭代式的SQL查询。 Impala的优势在于: 可以快速查询海量数…

    database 2023年3月27日
    00
  • DBA应该知道的一些关于SQL Server跟踪标记的使用

    DBA应该知道的一些关于SQL Server跟踪标记的使用 SQL Server 提供了一些跟踪标记(Trace Flag),可以用来开启或关闭某些功能或调整某些设置。这些标记有时候非常有用,可以解决某些问题或提高某些性能。本文将讲解一些 DBA 应该知道的有关跟踪标记的使用。 开启跟踪标记的常用方法 开启跟踪标记有多种方法,这里仅介绍两种最常用的方法:在命…

    database 2023年5月21日
    00
  • java中throws与try…catch的区别点

    在Java中,异常处理是非常重要的一部分,它可以帮助程序员有效地处理程序在运行时出现的非法状态以及异常情况。在Java中,我们可以使用 throws 和 try…catch 两种方式来处理异常。两种方式都可以在方法中抛出异常,但是它们之间也有一些显著的区别。下面让我们一一来看看它们的区别点。 throws 和 try…catch 的作用 throws…

    database 2023年5月21日
    00
  • 实用的简单PHP分页集合包括使用方法

    实用的简单PHP分页集合包括使用方法攻略 简介 分页是 Web 开发中很常见的功能,使用合适的工具可以大大简化分页实现的难度。本攻略介绍一个简单易用的 PHP 分页库 php-paginator,它提供了完整的分页实现和多种显示模板,支持自定义显示模板,可无缝集成到 PHP 项目中。 安装和使用 安装 使用 composer 安装最新版的 php-pagin…

    database 2023年5月21日
    00
  • sqlsever2019文件创建与变量示例

    下面是关于“SQL Server 2019文件创建与变量示例”的详细攻略: SQL Server 2019文件创建与变量示例 文件创建 在SQL Server中,我们可以通过以下语句来创建文件: USE [master] GO CREATE DATABASE [TestDB] CONTAINMENT = NONE ON PRIMARY ( NAME = N’…

    database 2023年5月21日
    00
  • win2003 服务器安全设置图文教程

    标题:Win2003服务器安全设置图文教程 前言 Windows Server 2003是微软公司推出的一款服务器操作系统,是广泛应用于企业级应用系统的操作系统。安全设置是每个系统使用者必须要掌握和了解的内容,本篇文章将详细讲解Win2003服务器的安全设置方法。 系统安全设置 关闭自动播放 使用管理员账号登录系统,打开”开始”菜单,在运行中输入”gpedi…

    database 2023年5月22日
    00
  • SQL 创建层次视图

    创建层次视图是SQL语言的一项强大功能,可以以层次方式组织数据,方便我们查询和分析。 下面是创建层次视图的完整攻略,包含了两个实例: 什么是层次视图 层次视图是一种特殊的视图,其中包含了上下级关系的数据。例如,员工表中可以包含每个员工的上级经理,这些数据可以用于创建层次视图。 创建层次视图的步骤 首先,需要在数据库中创建一个包含上下级关系的数据表。假设我们有…

    database 2023年3月27日
    00
  • MySQL自动填充create_time和update_time的两种方式

    MySQL的自动填充 create_time 和 update_time 字段有2种常见方式: 使用触发器自动填充 可以在创建表的时候编写触发器来自动生成时间,以下是示例代码: CREATE TRIGGER `trg_users_created_at` BEFORE INSERT ON `users` FOR EACH ROW SET NEW.created…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部