首页 技术 正文
技术 2022年11月8日
0 收藏 581 点赞 1,238 浏览 2826 个字

MongoDB数据库中,创建、查询、更新、删除操作的对象是集合。

1.查看某个数据库中有哪些集合,在此之前需要使用数据库

C:\Windows\system32>mongo
MongoDB shell version: 3.2.10
connecting to: test
> db
test
> show dbs;
chengdu 0.004GB
first 0.000GB
local 0.000GB
> use first;
switched to db first
> show collections;
blog
col
runoob
>

命令解释:

mongo —> 连接数据库, 在执行之前确保MongoDB数据库服务开启了

db  —> 查看当前正在使用的数据库

show dbs   –> 查看本地磁盘上那些数据库

use  [DatabaseName]  –> 使用某个(DatebaseName)数据库,若该数据库不存在,则首先创建数据库再使用

show  collections  –>查看当前数据库中的集合

2. 向集合中插入一条数据

> show collections;
blog
col
runoob
> db
first
> user = { 'name':'chengdu',
... 'sex' : 'M',
... 'age' : 22 }
{ "name" : "chengdu", "sex" : "M", "age" : 22 }
> db.users.insert(user);
WriteResult({ "nInserted" : 1 })
> show collections;
blog
col
runoob
users
>

首先创建了一个文档对象user,然后再将文档user插入集合users

命令解释:

> user = { ‘name’:’chengdu’,
… ‘sex’ : ‘M’,
… ‘age’ : 22 }
{ “name” : “chengdu”, “sex” : “M”, “age” : 22 }   –> 创建一个文档对象 user

db.users.insert(user)  –>向集合users中插入文档user,  如果集合users不存在,则先创建集合, 然后再插入文档对象

3.查询当当前集合中的文档对象,有两个方法  find() 和 findOne()。find()查看所有的文档对象,但在shell中最多显示20个。 findOne()查看第一个文档对象,只返回一个文档对象。

> db.users.find();
{ "_id" : ObjectId("584eafa97629396db95535da"), "name" : "chengdu", "sex" : "M", "age" : 22 }
> db.users.findOne();
{
"_id" : ObjectId("584eafa97629396db95535da"),
"name" : "chengdu",
"sex" : "M",
"age" : 22
}
>

具体查询某个文档对象,带参数的查询

> db.users.find({'name':'chengdu'});
{ "_id" : ObjectId("584eafa97629396db95535da"), "name" : "chengdu", "sex" : "M", "age" : 22 }
> db.users.findOne({'name':'chengdu'});
{
"_id" : ObjectId("584eafa97629396db95535da"),
"name" : "chengdu",
"sex" : "M",
"age" : 22
}
>

4.更新集合中的某个文档对象

> user = { 'name' : 'cd',
... 'sex' : 'M',
... 'age' : 22 }
{ "name" : "cd", "sex" : "M", "age" : 22 }
> db.users.update({'name' : 'chengdu'}, user);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.users.find();
{ "_id" : ObjectId("584eafa97629396db95535da"), "name" : "cd", "sex" : "M", "age" : 22 }
>

使用update语句更新原来集合中name为chengdu的文档对象,更新之后 name变为cd

在文档对象上增加一个键

> user
{ "name" : "cd", "sex" : "M", "age" : 22 }
> user.address = 'Shanghai';
Shanghai
> user
{ "name" : "cd", "sex" : "M", "age" : 22, "address" : "Shanghai" }
> db.users.update({'name':'cd'}, user);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.users.find();
{ "_id" : ObjectId("584eafa97629396db95535da"), "name" : "cd", "sex" : "M", "age" : 22, "address" : "Shanghai" }
>

5.删除某个文档对象,使用remove()方法

> user1 = { 'name' : 'xiaohong',
... 'sex' : 'F',
... 'age' : 22,
... 'address' : 'Beijing',
... 'qq' : ''}
{
"name" : "xiaohong",
"sex" : "F",
"age" : 22,
"address" : "Beijing",
"qq" : "12345678"
}
> db.users.insert(user1);
WriteResult({ "nInserted" : 1 })
> db.users.find();
{ "_id" : ObjectId("584eafa97629396db95535da"), "name" : "cd", "sex" : "M", "age" : 22, "address" : "Shanghai" }
{ "_id" : ObjectId("584eb4bd7629396db95535db"), "name" : "xiaohong", "sex" : "F", "age" : 22, "address" : "Beijing", "qq" : "12345678" }
> db.users.remove({'name' : 'xiaohong'});
WriteResult({ "nRemoved" : 1 })
> db.users.find();
{ "_id" : ObjectId("584eafa97629396db95535da"), "name" : "cd", "sex" : "M", "age" : 22, "address" : "Shanghai" }
>

首先创建了一个文档对象,该文档对象的键和之前文档对象的键的数目不同,然后再将文档对象插入到集合中,MongoDB的一个集合中可以存储键数目不同的文档对象,即可以插入成功,然后使用remove方法将插入的文档删除。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,031
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,520
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,368
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,148
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,781
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,860