随笔分类 -  MongoDB

大文件存储
摘要:pymongo 实现gridfs存储 import gridfs GridFS() 功能:生成gridfs对象 将文件存到数据库中 从数据库取出文件 阅读全文

posted @ 2018-09-22 16:37 zengsf 阅读(572) 评论(0) 推荐(0)

小文件的存储
摘要:对于小文件的存储,指小于16M的文件 import bson bson.binary.Binary() 功能: 将bytes格式字符串装换为mongodb的二进制存储格式 将文件存储到数据库中: 从数据库中取出文件: 阅读全文

posted @ 2018-09-22 16:34 zengsf 阅读(1059) 评论(0) 推荐(0)

在python中的使用
摘要:操作步骤: 1. 连接数据库,生成数据库连接对象 conn = pymongo.MongoClient('localhost',27017) 2. 选择要操作的数据库,生成数据库对象 (__setitem__) db = conn.stu db = conn['stu'] 3. 获取集合对象 mys 阅读全文

posted @ 2018-09-22 15:44 zengsf 阅读(414) 评论(0) 推荐(0)

游标 cursor
摘要:* mongo shell下支持JS代码,可以通过JS获取游标,进而获取数据操作结果。 var cursor = db.class1.find() cursor.next() 获取下一条结果 cursor.hasNext() 查看是否有下一个对象 阅读全文

posted @ 2018-09-22 15:04 zengsf 阅读(255) 评论(0) 推荐(0)

文件的存储GridFS
摘要:1.存储路径 》可以理解就是存储路径,然后在通过路径来获取文件 将文件放在本地路径(网络路径)下,然后数据库中存储该文件的查找路径 db.log.insert({filename:"python.xmind",size:120,path:"/hoem/zengsf/net/mongoDB"}) 优点 阅读全文

posted @ 2018-09-22 15:03 zengsf 阅读(1742) 评论(0) 推荐(0)

如何创建一个固定集合
摘要:在mongodb中还可以创建一个固定大小的集合 特点:能够淘汰早期数据 插入和顺序查找速度更快 可以控制集合的空间大小 使用:临时缓冲 日志处理 创建固定集合: db.createCollection("collection",{capped:true,size:1000,max:1000}) ca 阅读全文

posted @ 2018-09-22 14:53 zengsf 阅读(682) 评论(0) 推荐(0)

聚合操作及聚合管道
摘要:聚合操作 对文档的筛选结果进程整理统计 db.collection.aggregate() 功能:完成聚合操作 参数:聚合条件 > 聚合操作符 聚合操作符$group 分组聚合 需要配合具体的分组选项 $sum 求和 db.class1.aggregate({$group:{_id:'$gender 阅读全文

posted @ 2018-09-20 19:44 zengsf 阅读(227) 评论(0) 推荐(0)

索引约束
摘要:1. 索引表也需要占用一定的磁盘空间2. 当数据发生更新时索引表也要随之更新 那什么时候创建索引呢: 数据量较小时不适合创建索引,当数据库进程频繁的修改操作而不是查找操作时也不适合创建索引。针对一个集合并不是创建索引越多越好。 阅读全文

posted @ 2018-09-20 19:33 zengsf 阅读(106) 评论(0) 推荐(0)

索引类型
摘要:复合索引 根据多个域创建一个索引 db.class1.ensureIndex({name:1,age:-1},{name:"name_age"}) 数组索引,子文档索引 定义:如果对某个数组和子文档域创建索引,那么根据数组和子文档的查找均为索引查找 如果对score域创建索引则 下面的查找也是索引查 阅读全文

posted @ 2018-09-20 19:32 zengsf 阅读(166) 评论(0) 推荐(0)

索引
摘要:定义:指建立指定键值及所在文档存储位置的对照清单,使用索引可以方便我们进行快速查找,减少遍历次数提高查找效率 创建索引: db.collection.ensureIndex() 功能 : 创建索引 参数 : 第一个为对哪个域创建索引 第二个为索引的选项 对name域创建索引:db.class1.en 阅读全文

posted @ 2018-09-20 19:26 zengsf 阅读(107) 评论(0) 推荐(0)

数据类型的操作
摘要:时间数据类型 1.mongo中存储时间大多为ISOData 2.获取当前时间 1. 使用new Date() 自动生成当前时间 2. 使用 ISODate() 生成当前时间 3. 获取计算机时间生成时间格式字符串 Date() 3.ISODate() 功能: 生成mongodb时间存储类型 参数: 阅读全文

posted @ 2018-09-20 19:20 zengsf 阅读(131) 评论(0) 推荐(0)

数组修改操作符的使用
摘要:$push 向数组中添加一项 向score数组中添加一项 db.class2.update({name:'zengsf'},{$push:{score:91}}) $pushAll 向数组中添加多项 向zengsf中的score数组中添加多项 db.class2.update({name:'zeng 阅读全文

posted @ 2018-09-20 18:51 zengsf 阅读(109) 评论(0) 推荐(0)

修改操作符的使用
摘要:$set 修改一个域的值,增加一个域 e.g. 阿哲年龄修改为33 db.class1.update({name:'阿哲'},{$set:{age:33}}) e.g. 如果sex域不存在则会添加这个域 db.class1.update({name:'阿蓉'},{$set:{sex:'w'}}) $ 阅读全文

posted @ 2018-09-20 18:42 zengsf 阅读(264) 评论(0) 推荐(0)

查找结果的操作函数
摘要:db.collection.distinct(field) 功能:查看某个域的值范围 e.g. 获取某个域的值,去重 db.class1.distinct("age")db.collection.find().pretty() 功能:格式化显示查询结果,就是一个一个文档显示。 db.class1.f 阅读全文

posted @ 2018-09-19 19:56 zengsf 阅读(149) 评论(0) 推荐(0)

query更多的筛选用法
摘要:比较操作符$eq : = 写法:db.class0.find({age:{$eq:18}},{name:1,_id:0}); 查找年龄等于18$lt :<$lte : <=$gt : > db.class0.find({age:{$gt:17,$lt:20}},{name:1,_id:0}); 查找 阅读全文

posted @ 2018-09-19 19:54 zengsf 阅读(995) 评论(0) 推荐(0)

文档的增删改查
摘要:增加文档: 方法1: db.collection.insert({}) 插入单个文档 db.collection.insertOne({}) 插入当个文档 db.collection.insert([{},{},{}]) 插入多个文档,参数用中括号 db.collection.insertMany( 阅读全文

posted @ 2018-09-19 19:53 zengsf 阅读(244) 评论(0) 推荐(0)

文档及数据类型
摘要:mongodb中数据的组织形式 》文档 mongodb 文档: 是以键值对的形式组成的一组文档。类似python中字典描述数据的方式 键:即文档的域,表达了一个键值对的含义 键的命名规则: 1.utf-8格式字符串 2.不能使用“\0” 3.一个文档中的键不能重复 值:即文档存储的数据 *文档中键值 阅读全文

posted @ 2018-09-19 19:22 zengsf 阅读(320) 评论(0) 推荐(0)

对集合的操作
摘要:集合创建原则 1.集合中的文档要描述同一类事物 2.数据库中同一类数据尽量集中存放在相同的集合 3.集合中的文档嵌套层数不要太多 集合的命名规则: 1. 合法的utf-8字符串 2. 不能有'\0' 3. 不能以 system. 开头。是系统的保留前缀 4. 不能和关键字重复 创建集合 方法1: d 阅读全文

posted @ 2018-09-19 19:07 zengsf 阅读(130) 评论(0) 推荐(0)

对数据库的操作
摘要:数据库命名规则: 1. 默认使用utf-8字符 2. 不能含有空格 . / \ '\0' 字符 3. 长度不能超过64字节 4. 不能和系统数据库重名 5.严格区分大小写(命令语句也是一样) 如何进入数据库MongoDB: mongo: 进入数据库交互操作界面 mongo 库名 创建数据库 use 阅读全文

posted @ 2018-09-19 19:01 zengsf 阅读(170) 评论(0) 推荐(0)

数据库的终端命令操作
摘要:设置数据库的存储位置 mongod --dbpath 目录 e.g. mongod --dbpath dbs 设置数据库端口 mongod --port 8080 * 默认监听端口27017 数据库的备份和恢复 备份 mongodump -h 127.0.0.1 -d 库名 -o 备份名 e.g. 阅读全文

posted @ 2018-09-19 18:52 zengsf 阅读(585) 评论(0) 推荐(0)

导航