ThinkPHP5.1框架数据库链接和增删改查操作示例
发布:smiling 来源: PHP粉丝网 添加日期:2021-12-09 14:36:51 浏览: 评论:0
本文实例讲述了ThinkPHP5.1框架数据库链接和增删改查操作,分享给大家供大家参考,具体如下:
一、数据库的链接方式
- <?php
- namespace app\index\controller;
- use think\Db;
- class Demo
- {
- //1、全局配置 config/database.php配置
- public function dbTest()
- {
- return Db::table('pzq_article')
- ->where('id','29')
- ->value('title');
- }
- //2、动态配置 think\db\Query.php中有一个方法connect()
- public function dbTest2()
- {
- return Db::connect([
- 'type'=>'mysql',
- 'hostname'=>'localhost',
- 'database'=>'top789',
- 'username'=>'root',
- 'password'=>'root',
- ])
- ->table('pzq_article')
- ->where('id','76')
- ->value('title');
- }
- //3、DSN连接
- public function dbTest3()
- {
- $dsn = 'mysql://root:root@localhost:3306/top789#utf8';
- return Db::connect($dsn)
- ->table('pzq_article')
- ->where('id','88')
- ->value('title');
- }
- //4、单条查旬
- public function dbTest4()
- {
- $res = Db::table('pzq_article')
- ->field(['title'=>'标题','id'=>'编号'])//可添加别名
- ->where('id','=',20)//如果是等号,=可以省略
- ->find();//如果是主键查询,可省略上面where,这行写->find(20);
- dump(is_null($res)?'没有查到':$res);
- }
- //5、多条查旬
- public function dbTest5()
- {
- $res = Db::table('pzq_article')
- ->field(['id','cat_id','title'])
- ->where([
- ['id','>',20],
- ['cat_id','=',2],
- ])//一个条件,直接用表达式->where('id','>',20)。多个条件用数组
- ->order('id desc')->limit(3)->select();
- if(emptyempty($res)){
- return '没有查到';
- }else{
- dump($res);
- }
- }
- //6、数据添加
- public function dbTest6()
- {
- $data = [
- 'name'=>'Sam2',
- 'age'=>'29',
- 'posttime'=>time()
- ];
- $dataall=[
- ['name'=>'Sam3','age'=>'29','posttime'=>time()],
- ['name'=>'Sam4','age'=>'30','posttime'=>time()],
- ];
- //(1)单条插入
- //return Db::table('test')->data($data)->insert();
- //(2)插入同时返回新增主键id
- //return Db::table('test')->insertGetId($data);
- //(3)插入多条数据
- return Db::table('test')->data($dataall)->insertAll();
- }
- //更新数据
- public function dbTest7()
- {
- // return Db::table('test')
- // ->where('id','=',4)
- // ->update(['name'=>'SamC','age'=>'31']);
- //如果where条件是主键,还可以如下使用
- return Db::table('test')
- ->update(['name'=>'SamCheng','age'=>'30','id'=>4]);
- }
- //删除操作
- public function dbTest8()
- {
- //return Db::table('test')->delete(6);
- //或者
- return Db::table('test')->where('id',5)->delete();
- }
- //mysql原生语句 查询
- public function dbTest9()
- {
- $sql = "select name,age from test where id>2";
- dump(Db::query($sql));
- }
- //mysql 增、删、改 用Db::execute($sql)
- public function dbTest10()
- {
- //$sql = "update test set name='samC' where id=4";
- //$sql = "insert test set name='Yan',age='30'";
- $sql = "delete from test where id=4";
- return Db::execute($sql);
- }
- }
Tags: ThinkPHP5 1数据库链接
相关文章
- ·ThinkPHP5.0版本和ThinkPHP3.2版本的区别(2018-11-02)
- ·thinkphp5的get和post数据封装的方法介绍(代码)(2019-12-25)
- ·thinkPHP5运行在nginx上的配置方法详解(2020-03-22)
- ·巧用ThinkPHP5.1和 tufanbarisyildirim 快速解析apk(2020-03-22)
- ·thinkPHP5实现的查询数据库并返回json数据实例(2021-08-15)
- ·thinkPHP5(TP5)实现改写跳转提示页面的方法(2021-08-16)
- ·ThinkPHP5邮件发送服务封装(可发附件)(2021-08-17)
- ·thinkPHP5 ajax提交表单操作实例分析(2021-08-17)
- ·ThinkPHP5联合(关联)查询、多条件查询与聚合查询实例详解(2021-08-17)
- ·ThinkPHP5查询数据及处理结果的方法小结(2021-08-17)
- ·thinkPHP5框架整合plupload实现图片批量上传功能的方法(2021-08-18)
- ·thinkPHP5框架渲染模板的3种方式简述(2021-08-18)
- ·Thinkphp5 微信公众号token验证不成功的原因及解决方法(2021-08-19)
- ·学习thinkphp5.0验证类使用方法(2021-08-19)
- ·thinkphp5.0自定义验证规则使用方法(2021-08-20)
- ·在云虚拟主机部署thinkphp5项目的步骤详解(2021-08-23)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)