专业编程基础技术教程

网站首页 > 基础教程 正文

mangodb基础(mongodb基础)

ccvgpt 2024-11-17 07:24:43 基础教程 7 ℃

首先讲解较好的几个文档:

简书:https://www.jianshu.com/p/6df82d3f5c8a

mangodb基础(mongodb基础)

菜鸟教程:http://www.runoob.com/mongodb/mongodb-replication.html

mangoDb一般是用类似于json的格式存储并将数据存储为一个文档,数据结构由键值(key:value)组成

mangoDB与数据库的一些对比如下:

一个mangoDB可以建立多个数据库,默认的数据库名称为db,该数据库存储在data目录中。

一些命令:

show dbs:显示数据库列表

db:显示当前的数据库对象和集合

use local:连接到指定的local数据库

一些命名规范:

数据库名称:

  • 不能是空字符串("")。
  • 不得含有' '(空格)、.、$、/、\和\0 (空字符)。
  • 应全部小写。
  • 最多64字节。

需要注意的是:

  1. 文档中的键/值对是有序的。
  2. 文档中的值不仅可以是在双引号里面的字符串,还可以是其他几种数据类型(甚至可以是整个嵌入的文档)。
  3. MongoDB区分类型和大小写。
  4. MongoDB的文档不能有重复的键。
  5. 文档的键是字符串。除了少数例外情况,键可以使用任意UTF-8字符。

文档键命名规范:

  • 键不能含有\0 (空字符)。这个字符用来表示键的结尾。
  • .和$有特别的意义,只有在特定环境下才能使用。
  • 以下划线"_"开头的键是保留的(不是严格要求的)。

集合

集合就是 MongoDB 文档组,类似于 RDBMS (关系数据库管理系统:Relational Database Management System)中的表格。

集合存在于数据库中,集合没有固定的结构,这意味着你在对集合可以插入不同格式和类型的数据,但通常情况下我们插入集合的数据都会有一定的关联性。

  • 合法的集合名
  • 集合名不能是空字符串""。
  • 集合名不能含有\0字符(空字符),这个字符表示集合名的结尾。
  • 集合名不能以"system."开头,这是为系统集合保留的前缀。
  • 用户创建的集合名字不能含有保留字符。有些驱动程序的确支持在集合名里面包含,这是因为某些系统生成的集合中包含该字符。除非你要访问这种系统创建的集合,否则千万不要在名字里出现$。
  1. 创建数据库:use DATABASE_NAME
  2. 删除数据库:a)切换到指定的数据库 b)db.dropDataBase()
  3. 删除集合:a.首先切换到指定数据库 b,db.集合名.drop
  4. 查找已有集合:show collections
  5. 插入:db.collection.insert
  6. 更新:db.collection.update/save(query,set,upsert,muilt)
  7. 查询:db.collection.find()
  8. 删除:db.collection.remove()
  9. 查询包含“教”字的文档:db.collection.find({"title":/教/})
  10. 查询以“教”开头的文档:db.collection.find({"title":/^教/})
  11. 查询以教结尾的文档:db.collection.find({"title":/教$/})
  12. db.collection.find({},{"title":1,_id:0}).limit(2):第一个{}相当于where条件,如果什么都不写的话就默认实现是显示所有,第二个{}中指定哪些列显示,哪些列不显示,1为显示,0为不显示
  13. 排序sort(1/0)1为升序,0为降序
  14. 创建索引 db.collection.createIndex(keys,option),keys表示要创建的索引字段,1表示升序创建索引,-1表示降序创建索引,createIndex()接收可选参数,可选参数列表如下:

1、查看集合索引

db.col.getIndexes()

2、查看集合索引大小

db.col.totalIndexSize()

3、删除集合所有索引

db.col.dropIndexes()

4、删除集合指定索引

db.col.dropIndex("索引名称")

Tags:

最近发表
标签列表