Python-Web-数据库-mongodb
理念:
----无创建数据库方法,使用即创建
----里面无数据,即数据库不存在
----数据库有表,表里有一条数据,则数据库存在
----表数据为JSON格式【{‘name’:’lisi’,’age’:18},{...},{...}】
>>>增
Use 数据库名------进入数据库
-----------db.表名.insertOne({})单条 插入数据并建表(自动)
------------db.表名.insertMany([{}])多条
>>>删
MongoDB 删除数据库的语法格式如下:
db.dropDatabase()
集合删除语法格式如下:
db.collection.drop()
数据删除:
db.collection.remove(条件,)
>>>改
db.test0.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );
----db.表名.update(查找,更改)
----updateOne | updateMany
({"条件"},{"关键字":{"修改内容"}})
update修改器: $inc $set $unset $push $pull
>>>查
show dbs------查数据库
--------db ------查当前所在库
--------db.collections------查表
---------db.表名.find(条件)-----数据
>>>条件操作符
- (>) 大于 - $gt
- (<) 小于 - $lt
- (>=) 大于等于 - $gte
- (<= ) 小于等于 - $lte
// 大于100
db.col.find({"likes" : {$gt : 100}})
// 2条数据
db.表.find().limit(2)
// 排序,按title
db.表.find().sort({"title":-1})
// 设立title索引
db.表.ensureIndex({"title":1})
// 聚合函数-----以by_user字段为组,求和num_tutorial字段
db.表.aggregate([{$group : {_id : "$by_user", num_tutorial : {$sum : 1}}}])
$avg计算平均值
$min $max
Python mongodb
>>>安装
$ python3 -m pip3 install pymongo
>>>创建一个数据库
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["runoobdb"]
>>>创建表
Mycol = mydb[‘test’]
所有数据库 myclient.list_database_names()
所有表 mydb.list_collection_names()
增:
X = mycol.insert_one(mydict)
X.inserted_id
X.name
X = mycol.insert_many(mydict)
X.inserted_ids
删:
mycol.delete_one(条件)
mycol.delete_many(条件)
mycol.drop() # 删除表
改:
myquery = { "alexa": "" }
newvalues = { "$set": { "alexa": "" } }
mycol.update_one(myquery, newvalues)
// 多
myquery = { "name": { "$regex": "^F" } }
newvalues = { "$set": { "alexa": "" } }
x = mycol.update_many(myquery, newvalues)
查:
X = mycol.find_one(范围)
myquery = { "name": { "$gt": "H" } } # 大于
mydoc = mycol.find(myquery)
myquery = { "name": { "$regex": "^R" } } # 正则表达式
mydoc = mycol.find(myquery)
myresult = mycol.find().limit(3) # 3 条
mydoc = mycol.find().sort("alexa") # 字段 alexa 按升序排序
Python-Web-数据库-mongodb的更多相关文章
- Python的数据库mongoDB的入门操作
Python代码: import pymongo # 获取本地端口,激活mongo客户端 client = pymongo.MongoClient('localhost',27017) # 创建一个数 ...
- Python交互数据库(Mysql | Mongodb | Redis)
数据库 Mysql Mysql MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品 MyS ...
- 【简说Python WEB】数据库
目录 [简说Python WEB]数据库 数据库表 docker安装MySQL Flask-SQLAlchemy操纵MySQL数据库 初始化 定义模型 定义关系 数据库的CRUD操作 创建表 inse ...
- python操作三大主流数据库(10)python操作mongodb数据库④mongodb新闻项目实战
python操作mongodb数据库④mongodb新闻项目实战 参考文档:http://flask-mongoengine.readthedocs.io/en/latest/ 目录: [root@n ...
- python操作三大主流数据库(9)python操作mongodb数据库③mongodb odm模型mongoengine的使用
python操作mongodb数据库③mongodb odm模型mongoengine的使用 文档:http://mongoengine-odm.readthedocs.io/guide/ 安装pip ...
- python操作三大主流数据库(7)python操作mongodb数据库①mongodb的安装和简单使用
python操作mongodb数据库①mongodb的安装和简单使用 参考文档:中文版:http://www.mongoing.com/docs/crud.html英文版:https://docs.m ...
- Python全栈 MongoDB 数据库(概念、安装、创建数据)
什么是关系型数据库? 是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据, 同时也是一个被组织成一组拥有正式描述性的表格( ...
- python怎么连接MongoDB数据库
Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 PyMongo 驱动来连接. pip 安装: pip3 install pymongo 引入库: import pymo ...
- python web开发——django学习(一)第一个连接mysql数据库django网站运行成功
1.新建一个项目 2.新建一些文件夹方便管理 3.新建一个项目叫message 4.连接数据库 python web开发Django连接mysql 5.在数据库里自动生成django的表 6.运行 ...
- 【简说Python WEB】视图函数操作数据库
目录 [简说Python WEB]视图函数操作数据库 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境:virutalenv Python的版本:Python 3.6.9 ...
随机推荐
- [bzoj 1471] 不相交路径 (容斥原理)
题目描述 给出一个N(n<=150)N(n<=150)N(n<=150)个结点的有向无环简单图.给出444个不同的点aaa,bbb,ccc,ddd,定义不相交路径为两条路径,两条路径 ...
- Mybatis延迟加载, 一级缓存、二级缓存
延迟加载 概念:MyBatis中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟规则推迟对关联对象的select查询.延迟加载可以有效的减少数据库压力. (注意:MyBatis的延迟加载只 ...
- 去除IDEA中xml黄色背景
idea版本:IntelliJ IDEA 2019.2.1 在编写mybatis的xml中会出现大面积黄色背景提示,看起来比较不舒服. 去掉黄色背景颜色 1.打开File->Settings-& ...
- Laravel Repository Pattern
Laravel Repository Pattern The Repository Pattern can be very helpful to you in order to keep your ...
- BZOJ 1576 树剖+LCT
题意:给定一张图,保证 $1$ 号点到其他所有点的最短路径是唯一的,求:对于点 $i$,不经过 $1$ 到 $i$ 最短路径上最后一条边的最短路. 题解:可以先建出最短路树,然后枚举每一条非树边. 对 ...
- Crontab 定时任务格式参数
crontab 定时执行 任务 格式: * * * * *-) 小时(-) 日(-) 月份(-) 星期(-6) 星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条 ...
- mac 安装rabbitmq出现的问题
一直提示这个文件权限问题. 然后试了各种办法.chown user:group / chmod 777 等等.都没有解决. 最后查到 chmod 666 /users/xxx/.erlang.cook ...
- zabbix(4)数据库表分区优化
一.zabbix 数据库存储 zabbix-server将采集到的数据存储在数据库(mysql.oracle等),而数据存储的大小与每秒处理的数量量有关,因此数据存储取决于以下两个因数: (1)Req ...
- Vue插槽详解
简介 插槽:简单理解就是组件内部留一个或多个的插槽位置,可供组件传对应的模板代码进去.插槽的出现,让组件变的更加灵活. 一.匿名插槽 // 组件(父) <my-component> < ...
- Java核心复习—— 原子性、有序性与Happens-Before
一. 产生并发Bug的源头 可见性 缓存导致的可见性问题 原子性 线程切换带来的原子性问题 有序性 编译优化带来的有序性问题 上面讲到了 volatile 与可见性,本章再主要讲下原子性.有序性与Ha ...