时间:2021-07-01 10:21:17 帮助过:7人阅读
启动MongoDB服务,因为mongoDB并不随系统一起启动,可能以下命令运行后会等一小段的时间才会启动完毕。
$ sudo service mongodb start
进入MongoDB命令行操作界面(可能会出现connect failed,多试几次就行),在命令行中敲exit可以退出
$ mongo
实验中的布尔类型的ture用1代替,false用0代替
---------------------
$ mongo #进入到mongo命令行
> use test #连接到test数据库
注意:数据库名可以是任何字符,但是不能有空格、点号和$字符
文档是mongoDB的核心,类似于SQLite数据库(关系数据库)中的每一行数据。多个键及其关联的值放在一起就是文档。在mongodb中使用一种类json的bson存储数据,bson数据可以理解为在json的基础上添加了一些json中没有的数据类型。
例:
{"company":"Chenshi keji"}
假设有两个文档:
{
"name": "Tom Hanks",
"contact": "987654321",
"dob": "01-01-1991"
}#user文档
{
"building": "22 A, Indiana Apt",
"pincode": 123456,
"city": "chengdu",
"state": "sichuan"
}#address文档
关系1:嵌入式关系:把address文档嵌入到user文档中
{
"name": "Tom Hanks",
"contact": "987654321",
"dob": "01-01-1991",
"address":
[{
"building": "22 A, Indiana Apt",
"pincode": 123456,
"city": "chengdu",
"state": "sichuan"
},
{
"building": "170 A, Acropolis Apt",
"pincode": 456789,
"city": "beijing",
"state": "beijing"
}]
}#这就是嵌入式的关系
关系2:引用式关系:将两个文档分开,通过引用文档的_id字段来建立关系
{
"contact": "987654321",
"dob": "01-01-1991",
"name": "Tom Benzamin",
"address_ids": [
ObjectId("52ffc4a5d85242602e000000") #对应address文档的id字段
]
}#这就是引用式关系
集合就是一组文档的组合,就相当于是关系数据库中的表,在mongodb中可以存储不同的文档结构的文档 例:
{"company":"Chenshi keji"} {"people":"man","name":"peter"}
上面两个文档就可以存储在同一个集合中
数据库的信息存储在集合中,他们统一使用系统的命名空间:DBNAME.system.* DBNAME可用db或数据库名替代
启动服务后,进入 MongoDB 命令行操作界面:
$ mongo
使用 use 命令创建数据库:
> use mydb
查看当前连接的数据库:
> db
查看所有的数据库:
> show dbs
列出的所有数据库中看不到 mydb或者显示mydb(empty) ,因为 mydb 为空,里面没有任何东西,MongoDB不显示或显示mydb(empty)。
使用 db.dropDatabase() 销毁数据库:
> use local
switched to db local
> db.dropDatabase()
查看所有的数据库:
> show dbs
在数据库 mydb 中创建一个集合
> use mydb
switched to db mydb
> db.createCollection("users")
查看创建的集合:
> show collections
删除集合的方法如下:(删除 users 集合)
> show collections
> db.users.drop()
查看是否删除成功:
> show collections
插入数据时,如果 users 集合没有创建会自动创建。
> use mydb
switched to db mydb
> db.users.insert([
... { name : "jam",
... email : "jam@qq.com"
... },
... { name : "tom",
... email : "tom@qq.com"
... }
... ])
插入数据时,如果 users 集合没有创建会自动创建。
> use mydb2
switched to db mydb2
> db.users.save([
... { name : "jam",
... email : "jam@qq.com"
... },
... { name : "tom",
... email : "tom@qq.com"
... }
... ])
mongoDB
标签: