mongoDB
2015-06-28 17:04
239 查看
整理来自
https://www.shiyanlou.com/courses/running/50
进入MongoDB命令行操作界面(可能会出现connectfailed,多试几次就行),在命令行中敲exit可以退出
实验中的布尔类型的ture用1代替,false用0代替---------------------
注意:数据库名可以是任何字符,但是不能有空格、点号和$字符
关系1:嵌入式关系:把address文档嵌入到user文档中
关系2:引用式关系:将两个文档分开,通过引用文档的_id字段来建立关系
上面两个文档就可以存储在同一个集合中
使用use命令创建数据库:
查看当前连接的数据库:
查看所有的数据库:
列出的所有数据库中看不到mydb或者显示mydb(empty),因为mydb为空,里面没有任何东西,MongoDB不显示或显示mydb(empty)。
查看所有的数据库:
查看创建的集合:
查看是否删除成功:
1、简介
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。2、面向集合的存储
MongoDB中,一个数据库包含多个集合,类似于MySql中一个数据库包含多个表;一个集合包含多个文档,类似于MySql中一个表包含多条数据。3、虚拟机开机配置
启动MongoDB服务,因为mongoDB并不随系统一起启动,可能以下命令运行后会等一小段的时间才会启动完毕。$sudoservicemongodbstart
进入MongoDB命令行操作界面(可能会出现connectfailed,多试几次就行),在命令行中敲exit可以退出
$mongo
实验中的布尔类型的ture用1代替,false用0代替---------------------
基本概念
1、数据库
一个mongoDB可以创建多个数据库使用showdbs可以查看所有数据库的列表执行db命令则可以查看当前数据库对象或者集合运行use命令可以连接到指定的数据库$mongo#进入到mongo命令行 >usetest#连接到test数据库
注意:数据库名可以是任何字符,但是不能有空格、点号和$字符
2、文档
文档是mongoDB的核心,类似于SQLite数据库(关系数据库)中的每一行数据。多个键及其关联的值放在一起就是文档。在mongodb中使用一种类json的bson存储数据,bson数据可以理解为在json的基础上添加了一些json中没有的数据类型。例:{"company":"Chenshikeji"}
3、文档的逻辑联系
假设有两个文档:{ "name":"TomHanks", "contact":"987654321", "dob":"01-01-1991" }#user文档 { "building":"22A,IndianaApt", "pincode":123456, "city":"chengdu", "state":"sichuan" }#address文档[/code]
关系1:嵌入式关系:把address文档嵌入到user文档中
{ "name":"TomHanks", "contact":"987654321", "dob":"01-01-1991", "address": [{ "building":"22A,IndianaApt", "pincode":123456, "city":"chengdu", "state":"sichuan" }, { "building":"170A,AcropolisApt", "pincode":456789, "city":"beijing", "state":"beijing" }] }#这就是嵌入式的关系
关系2:引用式关系:将两个文档分开,通过引用文档的_id字段来建立关系
{ "contact":"987654321", "dob":"01-01-1991", "name":"TomBenzamin", "address_ids":[ ObjectId("52ffc4a5d85242602e000000")#对应address文档的id字段 ] }#这就是引用式关系
4、集合
集合就是一组文档的组合,就相当于是关系数据库中的表,在mongodb中可以存储不同的文档结构的文档例:{"company":"Chenshikeji"}{"people":"man","name":"peter"}
上面两个文档就可以存储在同一个集合中
5.元数据
数据库的信息存储在集合中,他们统一使用系统的命名空间:DBNAME.system.*DBNAME可用db或数据库名替代DBNAME.system.namespaces:列出所有名字空间DBNAME.system.indexs:列出所有索引DBNAME.system.profile:列出数据库概要信息DBNAME.system.users:列出访问数据库的用户DBNAME.system.sources:列出服务器信息四、数据库的创建和销毁
1、创建数据库
启动服务后,进入MongoDB命令行操作界面:$mongo
使用use命令创建数据库:
>usemydb
查看当前连接的数据库:
>db
查看所有的数据库:
>showdbs
列出的所有数据库中看不到mydb或者显示mydb(empty),因为mydb为空,里面没有任何东西,MongoDB不显示或显示mydb(empty)。
2、销毁数据库
使用db.dropDatabase()销毁数据库:>uselocal switchedtodblocal >db.dropDatabase()
查看所有的数据库:
>showdbs
五、集合(collection)的创建和删除
1、创建集合
在数据库mydb中创建一个集合>usemydbswitchedtodbmydb
>db.createCollection("users")
查看创建的集合:
>showcollections
2、删除集合
删除集合的方法如下:(删除users集合)>showcollections>db.users.drop()
查看是否删除成功:
>showcollections
六、向集合中插入数据
1、使用insert()
插入数据时,如果users集合没有创建会自动创建。>usemydbswitchedtodbmydb
>db.users.insert([
...{name:"jam",
...email:"jam@qq.com"
...},
...{name:"tom",
...email:"tom@qq.com"
...}
...])
2、使用save()
插入数据时,如果users集合没有创建会自动创建。>usemydb2
switchedtodbmydb2
>db.users.save([
...{name:"jam",
...email:"jam@qq.com"
...},
...{name:"tom",
...email:"tom@qq.com"
...}
...])
相关文章推荐
- mongodb 基本语法总结
- MongoDB Java Driver操作指南
- mongodb建立索引时如何指定超时时间
- MongoDB基本语法
- Mac下的mongodb安装
- MongoDB for C#基础入门
- Mongodb在Windows下安装及配置
- MongoDB基本命令用
- mongodb下载及安装配置教程【仅供参考】
- nodejs使用connect-mongodb报错(Please ensure that you set the default write concern)
- mongodb 的安装和使用
- mongodb-java-driver基本用法
- Mongodb启动命令mongod参数说明
- 对MongoDB中文社区一个词语中文翻译的看法
- MongoDB安装为Windows服务方法与注意事项
- mac 下面安装mongodb
- 菜鸟的mongoDB学习---(五)MongoDB的limit、skip、sort方法
- 关于使用 MongoDB Connector for Hadoop 的经验和教训
- mongodb 基础操作(一)
- 通过nodejs将文件上传到mongodb