tp6 mongodb简单的增删改查

2024-04-10 18:52
文章标签 简单 mongodb 改查 增删 tp6

本文主要是介绍tp6 mongodb简单的增删改查,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

controller/mongo.php

<?phpnamespace app\controller;
use think\facade\Db;
class Mongo
{/*** 插入数据* */public function insert(){// 插入数据$data = ['name' => 'zhangsan','email' => 'zhangsan@example.com','children'  => ['_id' =>  1,'name' => "Child 2"]];$res = Db::name('test')->insert($data);dd($res);}/*** 批量插入数据* */public function insertAll() {$data = [['name' => 'John','email' => 'john@example.com','addr' => ['city' => 'New York','state' => 'NY','zip' => '10001']],['name' => 'Jane','email' => 'jane@example.com','addr' => ['city' =>'Los Angeles','state' => 'CA','zip' => '90001']]];$res = Db::name('test')->insertAll($data);dd($res);}/*** 查询数据* */public function find() {//严格区分字符串和数字类型//按照条件查询,查询单个$res = Db::name('test')->where('name', 'John')->find();$res1 = Db::name('test')->where('name', 'John')->select();//根据_id查询$res2 = Db::name('test')->where('_id', '661602b5203500009e0060c3')->find();//根据_id in 查询$res3 = Db::name('test')->where('_id', 'in', ['661602b5203500009e0060c3', '661603a2203500009e0060c4'])->select();//使用子文档查询$res4 = Db::name('test')->where('addr.city', 'New York')->select();//使用子文档查询,子文档是一个多维数组$res5 = Db::name('test')->where('children.1._id', 1)->select();dd($res5);}/*** 更新数据* */public function update() {//更新单个$res = Db::name('test')->where('name', 'John')->update(['email' => 'john@example.com1']);//更新多个$res1 = Db::name('test')->where('name', 'John')->update(['email' => 'john@example.com1']);//根据_id更新$res2 = Db::name('test')->where('_id', '661602b5203500009e0060c3')->update(['email' =>'john@example.com1']);dd(1);}/*** 删除数据* */public function delete() {//删除单个$res = Db::name('test')->where('name', 'John')->delete();//删除多个$res1 = Db::name('test')->where('name', 'John')->delete();//根据_id删除$res2 = Db::name('test')->where('_id', '661602b5203500009e0060c3')->delete();dd(1);}/*** 聚合查询* */public function aggregate() {//简单查询$count = Db::connect('mongo')->table('test')->count();//单个条件查询$count1 = Db::connect('mongo')->table('test')->where('name', 'zhangsan')->count();}
}

config/database.php

 'mongo' => [// 数据库类型'type'            => 'mongo',// 设置MongoDB的主机地址'hostname'        => '127.0.0.1',// 设置MongoDB的端口'hostport'        => '27017',// 设置MongoDB的数据库名'database'        => 'test',// 是否是复制集'is_replica_set'  => false,// 用户名'username'        => '',// 密码'password'        => '',// MongoDB连接的其它选项'options'         => [],// 设置MongoDB的连接参数'uri_options'     => [],],

route/app.php

//mongo
Route::post('mongo/insert', 'mongo/insert');
Route::post('mongo/insertAll', 'mongo/insertAll');
Route::post('mongo/find', 'mongo/find');
Route::post('mongo/delete', 'mongo/delete');
Route::post('mongo/aggregate', 'mongo/aggregate');

这篇关于tp6 mongodb简单的增删改查的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/891857

相关文章

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

MybatisX快速生成增删改查的方法示例

《MybatisX快速生成增删改查的方法示例》MybatisX是基于IDEA的MyBatis/MyBatis-Plus开发插件,本文主要介绍了MybatisX快速生成增删改查的方法示例,文中通过示例代... 目录1 安装2 基本功能2.1 XML跳转2.2 代码生成2.2.1 生成.xml中的sql语句头2

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设

基于MongoDB实现文件的分布式存储

《基于MongoDB实现文件的分布式存储》分布式文件存储的方案有很多,今天分享一个基于mongodb数据库来实现文件的存储,mongodb支持分布式部署,以此来实现文件的分布式存储,需要的朋友可以参考... 目录一、引言二、GridFS 原理剖析三、Spring Boot 集成 GridFS3.1 添加依赖

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经