thinphp5数据库操作(一)

本文介绍如何使用ThinkPHP5框架进行数据库操作,包括创建数据表、配置数据库连接、执行基本查询、添加数据等核心步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  学习thinphp5操作数据库之前先创建一张表,利用Navicat for Mysql在 tp5数据库下创建名字是 tp_user 的表。sql语句是:

CREATE TABLE `tp_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(200) NOT NULL,
  `age` int(3) DEFAULT NULL,
  `create_time` int(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

数据是:
thinkphp5操作数据库首先需要配置链接数据库的database.php文件

配置之后为:

  

 'type'            => 'mysql',
    // 服务器地址
    'hostname'        => '127.0.0.1',
    // 数据库名
    'database'        => 'tp5',
    // 用户名
    'username'        => 'root',
    // 密码
    'password'        => '',
    // 端口
    'hostport'        => '',
    // 连接dsn
    'dsn'             => '',
    // 数据库连接参数
    'params'          => [],
    // 数据库编码默认采用utf8
    'charset'         => 'utf8',
    // 数据库表前缀
    'prefix'          => 'tp_',

需要注意的是最后一行设置了表的前缀。
之后的代码都是在 tp5/application/index/controller/Index.php 的 index的方法内
index方法是自己创建的
tp5是项目的名字.
准备工作结束了。

基本查询:
(查询之前别忘了:use think\Db;)

 $user = Db::table('tp_user')->select();
table内的参数是你要查询的表的完整名字
这句话的含义可以这样理解:
Db::table('tp_user') 告诉thinphp5要查询 tp_user 这张表,select()含义是要查询表中所有数据,最后将查询的所有语句赋值给$user.

$user = Db::name('user')->select();
这两个语句查询的结果是一样的,这个语句查询的也是表 tp_user 因为之前在database.php设置了前缀,就是我刚才提到要注意的地方.
thinkphp5提供了助手函数用于查询:

$user = db('user')->select();
这段代码跟上一行代码结果是一样的, 设置的数据库表前缀在这里也生效了.

$user = db('user')->find();
find()只会查询表中第一条数据


利用var_dump($user);查看一下数据


(Db::table('tp_user')   Db::name('user')     db('user') 可以调用的方法是一样的)


添加一条数据:

//  这是要添加的数据
        $data = ['name' => '小赵', 'age' => 30, 'create_time' => '000'];
        db('user')->insert($data);


Db::table('tp_user')
Db::name('user')
也是可以的自己测试下


添加多条数据:

//        要插入的多条数据
        $data = [
            ['name' => '小刘', 'age' => 30, 'create_time' => '000'],
            ['name' => '小孙', 'age' => 66, 'create_time' => '000']
        ];
        db('user')->insertAll($data);
数据变成多维数组
方法变成
insertAll()





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值