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

yizhihongxing

下面是 "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日

相关文章

  • 浅谈MySQL 亿级数据分页的优化

    浅谈MySQL 亿级数据分页的优化 背景 在大数据时代,查询海量数据的场景越来越常见。当需要对亿级数据进行分页查询时,由于数据量庞大,直接进行单机分页查询会导致性能问题,需要通过优化来提升分页查询的效率。 常见问题 对于亿级数据的分页查询,常见的问题有两个: 性能问题:直接进行单机分页查询会导致效率低下,需要通过优化来提高查询速度。 数据偏移问题:在数据量较…

    database 2023年5月19日
    00
  • SQL 多维度聚合运算

    SQL 多维度聚合运算是将数据根据不同维度进行分类,然后计算每个分类下的汇总值或统计指标,常见的聚合运算包括 COUNT、SUM、AVG、MIN、MAX等。 下面介绍 SQL 多维度聚合运算的完整攻略: 1. GROUP BY子句 GROUP BY子句用于将查询结果按照一个或多个列进行分组,以便对每个组进行聚合运算。例如,我们有一个 orders 表,包含了…

    database 2023年3月27日
    00
  • 集中式数据库和分布式数据库的区别

    下面针对集中式数据库和分布式数据库做详细的讲解和比较。 集中式数据库 定义 集中式数据库是指所有用户的数据存储在同一台服务器的一个数据库中,用户在使用时通过网络访问该服务器上的数据。 优点 数据管理简单,维护方便。 具有操作简单、快速、高效等特点,但是要求非常高的硬件支持。 可以保证数据一致性,缺省条件下很少出现同步问题。 可以保证数据安全性和一致性。 缺点…

    database 2023年3月27日
    00
  • DBMS 中的候选键

    候选键(Candidate Key)指在一张关系表中,能唯一的标识每一个元组的属性或属性集合。换句话说,候选键是一组属性,其唯一地确定一个关系中的每一行,没有重复行。候选键和主键的概念非常相似,不同的是,一张表可能存在多个候选键,但只能有一个主键。本文将详细解释DBMS中的候选键,包括定义、特性、举例和应用场景。 1. 定义 在一个关系表中,候选键是一组属性…

    database 2023年3月27日
    00
  • 三天吃透MySQL面试八股文

    什么是MySQL MySQL是一个关系型数据库,它采用表的形式来存储数据。你可以理解成是Excel表格,既然是表的形式存储数据,就有表结构(行和列)。行代表每一行数据,列代表该行中的每个值。列上的值是有数据类型的,比如:整数、字符串、日期等等。 数据库的三大范式 第一范式1NF 确保数据库表字段的原子性。 比如字段 userInfo: 广东省 10086′ …

    2023年4月8日
    00
  • php优化及高效提速问题的实现方法第1/2页

    关于“php优化及高效提速问题的实现方法”,一般可以从以下几个方面入手来进行优化: 1. 优化代码 1.1 减少文件包含 PHP的文件包含操作(如 include、require 等)相对较慢,因此在进行网站开发时,应尽量减少文件包含的次数。一般可以采用以下两种方法实现: 1.合并文件,将多个文件合并成一个文件,减少文件包含次数。比如将多个CSS样式文件合并…

    database 2023年5月22日
    00
  • C#中SQL Command的基本用法

    C#中连接到数据库并执行SQL语句的一种方法是使用SQL Command。下面是SQL Command的基本用法攻略: 创建SqlConnection对象 在使用SQL Command之前,我们需要创建SqlConnection对象,这是与数据库进行连接的一种方式。下面是一个示例,演示如何创建SqlConnection对象: SqlConnection co…

    database 2023年5月21日
    00
  • sql 中 case when 语法使用方法

    当我们处理SQL查询时,有时候我们需要对数据进行分类和排序。SQL中Case When语法就是为了解决这个问题而存在的。它可以将数据按照我们指定的条件进行分类,并进行相应的处理,还可以在查询语句中进行逻辑控制。下面我将详细讲解Case When语法的使用方法。 基础语法 CASE WHEN 条件1 THEN 结果1 WHEN 条件2 THEN 结果2 ……

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