当前位置:Gxlcms > 数据库问题 > MongoDB数据库—基础语法

MongoDB数据库—基础语法

时间:2021-07-01 10:21:17 帮助过:31人阅读

一、MongoDB 数据库的特点及安装
  • MongoDB 数据库的特点
    • 面向文档,模式自由
    • json数据模式(bson)(可以初略理解为字典)
    • 多级引索
    • 高可用复制集
    • 水平扩展
    • 跨平台、多种语言接口
    • 弱事务类型
    • 大数据、高并发、弱事务的web2.0互联网应用。
    • 优点:弱一致性,文档格式存储方式,内置gridFS(分布式文件系统)
    • 缺点:不支持事务,空间占用大
  • MongoDB 数据库的安装
    • 安装:一路点击next,finish
    • 配置环境变量:将bin目录配置到环境变量中
    • 执行:cmd>mongod –v?? ?????(测试环境变量是否配置好)
    • 新建如下文件夹(文件路径如下:)
    • 1 新建data文件夹
    • 2 新建 log 文件夹
    • 3 新建 mongo.conf 文件
    • 4 新建 mongo.cfg 文件(log文件夹下)
      1. <code>文件路径:
      2. Server
      3. |----3.7
      4. |----bin
      5. |----data
      6. |----log
      7. |----mongo.cfg
      8. |----mongo.conf</code>
    • 编辑 mongo.conf 文件(添加如下内容)
  1. <code>dbpath=C:\Program Files\MongoDB\Server\3.6\data ???????????? #数据库路径 软件安装目录(我的是默认目录)
  2. ??? logpath=C:\Program Files\MongoDB\Server\3.6\log\mongo.cfg ????#日志输出文件路径
  3. ??? logappend=true ??#错误日志采用追加模式
  4. ????journal=true ????? #启用日志文件,默认启用
  5. ????quiet=true ??????? ?#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
  6. ????port=27017 ???????#端口号 默认为27017
  7. </code>
  • 安装MongoDB服务:(cmd以管理员身份执行)
    1. <code>mongod --config "C:\Program Files\MongoDB\Server\3.6\mongo.conf" --install --serviceName "MongoDB"
    2. 启动服务:cmd 管理员方式启动>net start MongoDB</code>

二、基本语法:

MongoDB常见数据类型
  1. <code>String: 最常用的储存的数据类型。MongoDB中字符串必须是utf-8。
  2. Integer: 用来储存数值。(32位/64位)
  3. Boolean: 储存布尔值(true/false)
  4. Double: 储存浮点值。
  5. Min/Max keys:用来对Bson元素最低最高值比较。
  6. Arrays: 使用此类型的数组/列表/多个值储存到一个键
  7. Timestamp: 时间戳。(方便记录文件已被修改/添加)
  8. Object: 用于嵌入式文件。
  9. Null: 储存null值。
  10. symbol: 用于字符串相同,但它通常保留给特定符号类型的语言使用。
  11. Date: 储存当前日期/时间的Unix时间格式。可以指定自己的日期和时间/日期和年月日到创建对象。
  12. ObjectID: 用于储存文档的ID。
  13. Binary data : 储存二进制数据。
  14. Code: 用于储存到文档中的Javascript代码。
  15. regular expression: 用于储存正则表达式</code>
数据库增删改查
  • 创建库 / 删除库 / 创建集合 / 删除集合
  1. <code>创建库:use db_name?????? #使用/创建数据库(若不存在则创建该数据库)
  2. db??????????????????????? #检查当前选择的数据库
  3. show dbs????????????? #显示当前有哪些数据库
  4. show tables/show collections ?? ?#查看数据表
  5. 删除库 :? db.dropDatabase()?? ?#这将删除选定的数据库。如果没有选择任何数据库,默认删除Test数据库。
  6. 创建集合:
  7. 在mongodb里面没有表的概念,集合(collections)就相当于传统数据库的表。
  8. 语法:db.createCollection(name,option)?? ?
  9. 演示:
  10. >use test # 进入该数据库
  11. switched to db test
  12. >db.createCollection("mycollection") # 创建myCollection 集合
  13. {"ok",1}
  14. >show collections # 检查创建集合的命令
  15. mycollection
  16. system.indexes
  17. 删除集合
  18. ?>use mydb #检查可用的集合在数据库 mydb
  19. switched to db mydb
  20. >show collections #检查集合
  21. mycol
  22. mycollection
  23. >db.mycollection.drop() ?? #删除集合
  24. true
  25. drop()方法返回true,成功丢弃;否则返回false
  26. >show collections #再次检查数据库中集合列表
  27. mycol
  28. system.indexes
  29. yiibai
  30. </code>
  • MongoDB插入文档(Insert() / save方法)
  1. <code>语法:insert基本语法如: >db.COLLECTION_NAME.insert(document)
  2. db.mycol.insert({
  3. title: ‘MongoDB Overview‘,
  4. description:‘MongoDB id no sql database‘,
  5. by: ‘tutorials yiibai‘,
  6. url: ‘http://www.yiibai.com‘,
  7. tags: [‘mongodb‘,‘database‘,‘NoSQL‘],
  8. like: 100
  9. })
  10. db.collection_name.find()????????????#显示插入的数据
  11. 插入多个文档 :?? db.mycol.insert([{},{}])
  12. db.score.insert([{name:"张三",subject:"地理",score:88},
  13. {name:"李四",subject:"语文",score:87}])
  14. </code>
  • MongoDB更新文档(update()/save()方法)
    updata()更新现有文档值 / save()用于替换现有文档值。
  1. <code>updata()基本语法如下:
  2. >db.COLLECTION_NAME.update(selection_criteria,updated_data)
  3. #mycol集合文件:
  4. {"_id":ObjectID(4685481851451we55),"title":"MongoDB overview"}
  5. {"_id":ObjectID(4685481851451we56),"title":"NoSQL overview"}
  6. {"_id":ObjectID(4685481851451we57),"title":"tutorials overview"}
  7. >db.mycol.update({"title":"MongoDB overview"},
  8. {$set: {"title":"tutorials overview"}}) #更新标题
  9. >db.mycol.update({"title":"MongoDB overview"},
  10. {$set: {"title":"tutorials overview"}},{multi:true}) #要实现多个更新在后面加{multi:true}
  11. >db.mycol.find() #查询插入的数据
  12. save()方法?? ?替换现有符合此ID文档的所有数据
  13. >db.collection_name.save({id.ObjectID(),new_data})
  14. db.mycol.save({"_id":ObjectID(5689745956adf56as7),
  15. "title":"yiibai new topic",
  16. "by":"yiibai"})
  17. >db.mycol.find() #查询插入的数据
  18. </code>

MongoDB数据库—基础语法

标签:tle   symbol   文件系统   des   int   日期   create   test   tutorials   

人气教程排行