标签:大写 ring 根据 当前日期 代码 目录 cli == image
MongoDB
在使用MongoDB时,有一个原则:
使用不存在的对象即创建该对象例如: user.nickname = Dragonfire
他的数据存储格式是:
[ {
ID:1,
name:jinwangba,
age:84,
hobby:[piaochang,taiguo,qiaoqun]
},
{
ID:2,
name:yinwangba,
age:73,
hobby:[keyiqusile]
},
{
ID:2,
name:yinwangba,
age:73,
hobby:[{
date:2018年10月17日,
name:"jinwangba"
},
]
}
]
关系型数据库 MongoDB:
表 table Collections
字段 Colum Fields
行 Row Documents
MongoDB 之 丰富多彩的数据类型世界
首先我们要先了解一下MongoDB中有什么样的数据类型:
Object ID :Documents 自生成的 _id
String: 字符串,必须是utf-8
Boolean:布尔值,true 或者false (这里有坑哦~在我们大Python中 True False 首字母大写)
Integer:整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)
Double:浮点数 (没有float类型,所有小数都是Double)
Arrays:数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦)
Object:如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典
Null:空数据类型 , 一个特殊的概念,None Null
Timestamp:时间戳
Date:存储当前日期或时间unix时间格式 (我们一般不用这个Date类型,时间戳可以秒杀一切时间类型)
先下载MongoDB数据库,
然后把MongoDB的bin目录添加进环境变量中。
打开终端cmd,输入mongod,启动数据库,这时候会抱一个错误,是说 缺少,
这时候我们在c盘中创建这么一个文件夹。就不会报错了。
重新输入mongod,启动数据库。
打开另一个终端,进入数据库。
我们都不爱在数据库中敲代码,所以我们用MongoDB的可视化工具。NoSQLBooster for MongoDB
先链接s12day117数据库
插入:
在存入数据库的时候有一个_di字段:这个字段是mongo给我们加的,全宇宙唯一。
删除:
修改:
查
$修改器:
$set增加或者修改字段
$unset 删除字段
$lt 小于
$gt 大于
$lte 小于等于
$gte 大于等于
$eq : 等于
$inc 在原有值基础上增加
$push 在Arrays中添加一个元素
{$push: {hobby:"养生"}} 在Hobby中添加一个“养生”
$pull 在Arrays中删除一个元素
{$pull: {hobby:"抽烟"}} 在Hobby中删除一个“抽烟”
$pop 在Arrays中删除最后一个元素或第一个元素
$ : 存储 满足前置条件列表元素的下标索引
相当于:
练习:
查询$关键字:
$all #满足所有元素的数据
db.user.find({myczdyy:{$all:[1,3]}})
$in #满足其中一个元素的数据
db.user.find({myczdyy:{$in:[1,3]}})
$or #满足其中一个字段的数据
db.user.find({$or:[{name:"yinwangba"},{age:{$gt:70}}]})
limit(x):
只查询前x条数据
skip(x):
跳过多前x条数据
sort({ id:-1 }):
根据id字段进行倒序排列:-1 正序排列:1
利用上面这三个可以实现分页的功能。
这些是在mongo数据库中操作。我们在python中怎么用mongo数据库
首先下载插件pymongo,python3 -m pip install pymongo
import pymongo # 建立连接,mongo的默认端口是27017 mongo_client = pymongo.MongoClient(host=‘127.0.0.1‘,port=27017) # 连接s12day117数据库 mongo_db = mongo_client[‘s12day117‘] # 查询 res = mongo_db.user.find() print(res) for i in res: print(i) res = mongo_db.user.find_one({‘name‘:‘yang‘}) print(res) #插入 res = mongo_db.chat.inset_one({}) print(res,res.inserted_id) res = mongo_db.chat.inset_many([{},{},{}]) print(res,res.inserted_ids) # 改 res = mongo_db.user.update_one({‘name‘:‘yang‘},{‘$set‘:{‘age‘:888}}) res = mongo_db.user.update_many({"age":{"$gte":0}},{"$set":{"age":888}}) print(res,dir(res),res.modified_count) # 删除 res = mongo_db.user.delete_one({"name":"xiaozhuer"}) res = mongo_db.user.delete_many({}) print(res,dir(res),res.deleted_count) res = mongo_db.user.find_one({"name":"yang"}) print(res) for index,item in enumerate(res.get(‘course‘)): if res.get(‘course‘)[index][‘course_name‘] == ‘linux‘: res.get(‘course‘)[index][‘course_name‘] = ‘django框架‘ res = mongo_db.user.update_one({‘name‘:‘yang‘},{‘$set‘:res})
标签:大写 ring 根据 当前日期 代码 目录 cli == image
原文地址:https://www.cnblogs.com/yb635238477/p/9807536.html