php7结合mongoDB插入数据
php7结合mongoDB插入数据
代码如下:
<?php
$bulk = new MongoDB\Driver\BulkWrite;//1
$document = ['_id' => new MongoDB\BSON\ObjectID, 'name' => '菜鸟教程'];//2
$_id= $bulk->insert($document);
var_dump($_id);//3
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017"); //4
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000);//5
$result = $manager->executeBulkWrite('test.runoob', $bulk, $writeConcern);//6
?>
MongoDB\Driver\BulkWrite收集一个或多个应该被发送到服务器的写操作,添加任意数量的插入、更新和删除操作后,可以通过MongoDB\Driver\Manager::executeBulkWrite()执行。
在MongoDB中,每个存储在一个集合中的文档需要一个独特的_id字段作为主键。如果插入的文档,省去了_id领域,驱动程序会自动生成一个对象id为_id场。
一个ObjectId BSON型。该值由12个字节,其中前四个字节是个时间戳,反映ObjectId的产生时间。具体而言,价值包括: 一个代表秒的Unix纪元自4字节值, 一个3字节机器标识符, 2字节进程ID,和 一个3字节计数器,开始用一个随机值
- var_dump能打印出类型。
print_r只能打出值。
echo()是正常输出。
需要精确调试的时候用var_dump();
一般查看的时候用print_r();
另外,echo()不能显示数组,其余2个可以......
- MongoDB\Driver\Manager是扩展的主要切入点。它负责维护连接到MongoDB(可以是独立服务器,复制集,或分片集群)。
- MongoDB\Driver\WriteConcern这个是个对mongodb的写入性能、以及确保数据一致性的控制设置,非常重要的一个类.MongoDB支持的WriteConncern选项如下
- w: 数据写入到number个节点才向用客户端确认
- {w: 0} 对客户端的写入不需要发送任何确认,适用于性能要求高,但不关注正确性的场景
- {w: 1} 默认的writeConcern,数据写入到Primary就向客户端发送确认
- {w: “majority”} 数据写入到副本集大多数成员后向客户端发送确认,适用于对数据安全性要求比较高的场景,该选项会降低写入性能
- j: 写入操作的journal持久化后才向客户端确认默认为”{j: false},如果要求Primary写入持久化了才向客户端确认,则指定该选项为true
- wtimeout: 写入超时时间,仅w的值大于1时有效。
- 当指定{w: }时,数据需要成功写入number个节点才算成功,如果写入过程中有节点故障,可能导致这个条件一直不能满足,从而一直不能向客户端发送确认结果,针对这种情况,客户端可设置wtimeout选项来指定超时时间,当写入过程持续超过该时间仍未结束,则认为写入失败。
- 详情请见: http://www.mongoing.com/archives/2916
php7结合mongoDB插入数据的更多相关文章
- php7和MongoDB插入并读取数据
php7和MongoDB插入并读取数据 代码如下: <?php $manager = new MongoDB\Driver\Manager("mongodb://localhost:2 ...
- mongoDB 插入数据 用java实现
import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; impor ...
- mongoDB - 插入数据
db.use.js /** * 使用前:先安装node环境.express.mongodb. * * 1.1 安装Node * 1.2 npm i -D express mongodb &&a ...
- java操作mongodb——插入数据
在mongodb中,表(Table)被称之为集合(Collection),记录(Record)被称为文档(Document) 首先连接到数据库 MongoClient mongoClient = ne ...
- MongoDB插入数据的3种方法
insert()方法: 下面是在inventory集合中插入一个三个字段的文档: db.inventory.insert( { _id: 10, type: "misc", ite ...
- php之mongodb插入数据后如何返回当前插入记录ID
<?php /** *插入记录 *参数: *$table_name:表名 *$record:记录 * *返回值: *成功:true *失败:false */ function insert($t ...
- MongoDB插入数据,除去Class key
本文来源于: 来源:CSDN 原文:https://blog.csdn.net/ClementAD/article/details/50849680 去除class字段的本质为设置 DefaultMo ...
- mongoDB数据库插入数据时报错:db.collection is not a function
nodejs连接mongodb插入数据时,发现mongoDB报错:db.collection is not a function.解决方法: 1.npm下载mongodb2.x.x版本替换3.x.x ...
- Mongodb插入记录
Mongodb下文档的数据结构和JSON基本一样. 所有存储在集合中的数据都是BSON格式. BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON. 插入文档 MongoDB ...
随机推荐
- WEB安全----XSS和CSRF
随着Web2.0.社交网络.微博等等一系列新型的互联网产品的诞生,基于Web环境的互联网应用越来越广泛,企业信息化的过程中各种应用都架设在Web平台上,Web业务的迅速发展也引起黑客们的强烈关注,接踵 ...
- 结合Pool进程池进程,实现进程之间的通讯,稍微复杂的运用
#进程池中的Queue """ 如果要用Pool创建进程,就需要multiprocessing.Manager()中的Queue() 而不是multiprocessing ...
- 什么是SpringMvc
1.什么是SpringMvc? SpringMvc是spring的一个模块 基于MVC的一个框架 无需中间整合层来整合 什么是MVC ?mvc在b/s下的应用: 首先请求发送request请求到C(c ...
- sqlserver创建索引语句
CREATE INDEX PersonIndex ON 表名 (字段名) DROP INDEX PersonIndex ON 表名
- Spring之AOP简单demo
1.加入JAR包.出了Spring自身的Jar包还要一些依赖的JAR包.不然会报ClassNotFound. Student.java package com.lubby.bean; import o ...
- Git相关命令整理
git config --global user.name //配置姓名git config --global user.email //配置邮箱git config --list //查看配置 ...
- UIWindow与UIView
UIView与UIWindow * 一般应用程序只有一个UIWindow对象.所有的控件都是在UIWindow上展现的.每个UIView对象都有一个window属性,表示当前view显示在哪个窗体上. ...
- 通用的规则匹配算法(原创)(java+.net)
1.java里可以使用Spring的 Spel或者Google的Aviator 如果使用 Aviator 则添加以下依赖 <dependency> <groupId>com.g ...
- spring启动图案修改(纯属好玩)
在resource目录下新建banner.txt(与application.properties或者application.yml同级) 在里面随便写自己的汉字图案就行了,比如我的: _ooOoo_ ...
- 《YC创业营:硅谷顶级创业孵化器如何改变世界》:YC2011批量天使投资记录 三星推荐
这个YC创业营是一个硅谷的天使投资基金,每年两次批量投资创业公司.本书说的是2011年YC批量选择了64个创业团队,让他们集中到硅谷办公3个月,给他们创业指导,帮他们找A轮投资. YC创始人偏爱25岁 ...