mongo数据库表怎么增加字段

mongo数据库表怎么增加字段,第1张

update *** 作中有$set *** 作,db.collection.update({name:'abc',id:12},{$set:{age:'123'}}),$set后面就是要添加的字段,如果该字段已经有了,就会修改,没有就添加,前面name和id是查询条件

MongoDB 插入文档

本章节中我们将向大家介绍如何将数据插入到MongoDB的集合中。

文档的数据结构和JSON基本一样。

所有存储在集合中的数据都是BSON格式。

BSON是一种类json的一种二进制形式的存储格式,简称Binary JSON。

插入文档

MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:

db.COLLECTION_NAME.insert(document)

实例

以下文档可以存储在 MongoDB 的 runoob 数据库 的 col集合中:

>db.col.insert({title: 'MongoDB 教程',

description: 'MongoDB 是一个 Nosql 数据库',

by: '菜鸟教程',

url: 'http://www.runoob.com',

tags: ['mongodb', 'database', 'NoSQL'],

likes: 100

})

以上实例中 col 是我们的集合名,前一章节我们已经创建过了,如果该集合不在该数据库中, MongoDB 会自动创建该集合并插入文档。

查看已插入文档:

>db.col.find()

{ "_id" : ObjectId("56064886ade2f21f36b03134"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }

>

我们也可以将数据定义为一个变量,如下所示:

>document=({title: 'MongoDB 教程',

description: 'MongoDB 是一个 Nosql 数据库',

by: '菜鸟教程',

url: 'http://www.runoob.com',

tags: ['mongodb', 'database', 'NoSQL'],

likes: 100

})

执行后显示结果如下:

{

"title" : "MongoDB 教程",

"description" : "MongoDB 是一个 Nosql 数据库",

"by" : "菜鸟教程",

"url" : "http://www.runoob.com",

"tags" : [

"mongodb",

"database",

"NoSQL"

],

"likes" : 100

}

执行插入 *** 作:

>db.col.insert(document)

WriteResult({ "nInserted" : 1 })

>

插入文档你也可以使用 db.col.save(document) 命令。如果不指定 _id 字段 save() 方法类似于 insert() 方法。如果指定 _id 字段,则会更新该 _id 的数据。

代码片段(5)[全屏查看所有代码]1. [代码]方法1 BasicDBObject document = new BasicDBObject()document.put("database", "mkyongDB")document.put("table", "hosting")BasicDBObject documentDetail = new BasicDBObject()documentDetail.put("records", "99")documentDetail.put("index", "vps_index1")documentDetail.put("active", "true")document.put("detail", documentDetail)collection.insert(document)2. [代码]方法2 BasicDBObjectBuilder documentBuilder = BasicDBObjectBuilder.start() .add("database", "mkyongDB") .add("table", "hosting")BasicDBObjectBuilder documentBuilderDetail = BasicDBObjectBuilder.start() .add("records", "99") .add("index", "vps_index1") .add("active", "true")documentBuilder.add("detail", documentBuilderDetail.get())collection.insert(documentBuilder.get())3. [代码]方法3(使用Map) Map<String, Object>documentMap = new HashMap<String, Object>()documentMap.put("database", "mkyongDB")documentMap.put("table", "hosting")Map<String, Object>documentMapDetail = new HashMap<String, Object>()documentMapDetail.put("records", "99")documentMapDetail.put("index", "vps_index1")documentMapDetail.put("active", "true")documentMap.put("detail", documentMapDetail)collection.insert(new BasicDBObject(documentMap))4. [代码]方法4(使用JSON) String json = "{'database' : 'mkyongDB','table' : 'hosting'," + "'detail' : {'records' : 99, 'index' : 'vps_index1', 'active' : 'true'}}}"DBObject dbObject = (DBObject)JSON.parse(json)collection.insert(dbObject)5. [代码]完整示例 InsertDocumentApp.java package com.mkyong.coreimport java.net.UnknownHostExceptionimport java.util.HashMapimport java.util.Mapimport com.mongodb.BasicDBObjectimport com.mongodb.BasicDBObjectBuilderimport com.mongodb.DBimport com.mongodb.DBCollectionimport com.mongodb.DBCursorimport com.mongodb.DBObjectimport com.mongodb.Mongoimport com.mongodb.MongoExceptionimport com.mongodb.util.JSON/** * Java MongoDB : Insert a Document * */ public class InsertDocumentApp { public static void main(String[] args) { try { Mongo mongo = new Mongo("localhost", 27017)DB db = mongo.getDB("yourdb")// get a single collection DBCollection collection = db.getCollection("dummyColl")// BasicDBObject example System.out.println("BasicDBObject example...")BasicDBObject document = new BasicDBObject()document.put("database", "mkyongDB")document.put("table", "hosting")BasicDBObject documentDetail = new BasicDBObject()documentDetail.put("records", "99")documentDetail.put("index", "vps_index1")documentDetail.put("active", "true")document.put("detail", documentDetail)collection.insert(document)DBCursor cursorDoc = collection.find()while (cursorDoc.hasNext()) { System.out.println(cursorDoc.next())} collection.remove(new BasicDBObject())// BasicDBObjectBuilder example System.out.println("BasicDBObjectBuilder example...")BasicDBObjectBuilder documentBuilder = BasicDBObjectBuilder.start() .add("database", "mkyongDB") .add("table", "hosting")BasicDBObjectBuilder documentBuilderDetail = BasicDBObjectBuilder.start() .add("records", "99") .add("index", "vps_index1") .add("active", "true")documentBuilder.add("detail", documentBuilderDetail.get())collection.insert(documentBuilder.get())DBCursor cursorDocBuilder = collection.find()while (cursorDocBuilder.hasNext()) { System.out.println(cursorDocBuilder.next())} collection.remove(new BasicDBObject())// Map example System.out.println("Map example...")Map<String, Object>documentMap = new HashMap<String, Object>()documentMap.put("database", "mkyongDB")documentMap.put("table", "hosting")Map<String, Object>documentMapDetail = new HashMap<String, Object>()documentMapDetail.put("records", "99")documentMapDetail.put("index", "vps_index1")documentMapDetail.put("active", "true")documentMap.put("detail", documentMapDetail)collection.insert(new BasicDBObject(documentMap))DBCursor cursorDocMap = collection.find()while (cursorDocMap.hasNext()) { System.out.println(cursorDocMap.next())} collection.remove(new BasicDBObject())// JSON parse example System.out.println("JSON parse example...")String json = "{'database' : 'mkyongDB','table' : 'hosting'," + "'detail' : {'records' : 99, 'index' : 'vps_index1', 'active' : 'true'}}}"DBObject dbObject = (DBObject)JSON.parse(json)collection.insert(dbObject)DBCursor cursorDocJSON = collection.find()while (cursorDocJSON.hasNext()) { System.out.println(cursorDocJSON.next())} collection.remove(new BasicDBObject())} catch (UnknownHostException e) { e.printStackTrace()} catch (MongoException e) { e.printStackTrace()} } }


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11642640.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存