mongodb的基本操作

mac2022-06-30  20

mongodb操作命令行形式

进入mongodb的命令行

保证安装并成功启动服务 启动服务用

mongod --dbpath .

进入mongodb客户端命令

mongo

查看当前存在的所有数据库

> show dbs admin 0.000GB config 0.000GB local 0.000GB spider_data 0.002GB

可以看到我有四个库admin,config,local,spider_data(这是我之前创建好的你的电脑没有这个。) local数据库主要存储副本集的元数据,admin数据库则主要存储MongoDB的用户、角色等信息。慎用这三个库,一般情况下我们需要创建一个符合自己业务逻辑的库。像我就创建了spider_data这个库,下面我们看看如何创建数据库。

创建数据库

如果数据库不存在,则创建数据库,否则切换到指定数据库。  这里我们是做一个测试所以用test_db作为测试数据库的名字。

> use test_db switched to db test_db >

 输入db可以查看当前的数据库名.

> db test_db >

此时输入show dbs会发现还是原来的几个库,我们给新创建的库,加入数据就可以显示了。

数据插入操作

如果集合不存在,插入操作将创建集合。 在集合中,具有唯一主键_id。如果在插入文件中未声明_id;MongoDB将自动使用ObjectIds作为_id

MongoDB提供了保存数据的方法一共有三个:

db.collection.insertOne() 插入一条db.collection.insertMany() 插入多条db.collection.insert() 插入一条或者多条 其中collection就是表名,这里我们在上面的test_data库里创建test这个表并插入数据。 首先我们使用insertOne插入一条数据 > db.test.insertOne({'id':11,'name':'daming1m'}) { "acknowledged" : true, "insertedId" : ObjectId("5bb98a36cb094f7674e574ea") }

使用inserMany插入多条,类型列表字典

> db.test.insertMany([{'id':1,'name':'daming1m'},{'id':2,'name':'lisa1m'}]) { "acknowledged" : true, "insertedIds" : [ ObjectId("5bb989a4cb094f7674e574e8"), ObjectId("5bb989a4cb094f7674e574e9") ] }

 使用insert可以插入一条和多条

> db.test.insert({'id':123,'name':'daming'}) WriteResult({ "nInserted" : 1 }) > db.test.insert({'id':1231,'name':'daming1'},{'id':1241,'name':'lisa1'}) WriteResult({ "nInserted" : 1 })

观察发现上面即使两条数据也是显示影响了一条,所以使用insert来插入多条的时候,注意json外面要使用[]

> db.test.insert([{'id':123,'name':'daming'},{'id':124,'name':'lisa'}]) BulkWriteResult({ "writeErrors" : [ ], "writeConcernErrors" : [ ], "nInserted" : 2, "nUpserted" : 0, "nMatched" : 0, "nModified" : 0, "nRemoved" : 0, "upserted" : [ ] })

关于insert和insertmany插入多条的操作的区别,目前不知道什么区别,有知道好心人麻烦告诉我下。

转载于:https://www.cnblogs.com/c-x-a/p/9749844.html

相关资源:MONGODB基本操作封装类
最新回复(0)