1.简介

MongoDB是一个基于分布式文件存储的文档数据库,可以说是非关系型(NoSQL,Not Only SQL)数据库中比较像关系型数据库的一个,具有免费、操作简单、面向文档、自动分片、可扩展性强、查询功能强大等特点,对大数据处理支持较好,旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他文档,数组及文档数组。

2.应用

MongoDB数据库可以到网站https://www.mongodb.org/downloads下载,安装之后打开命令提示符环境并切换到MongoDB安装目录中的server\3.2\bin文件夹,然后执行命令mongod --dbpath D:\data --journal -- storageEngine=mmapv1启动MongoDB,当然需要首先在D盘根目录下新建文件夹data。

让刚才那个命令提示符环境始终处于运行状态,然后再打开一个命令提示符环境,执行mongo命令连接MongoDB数据库,如果连接成功的话,会显示一个>符号作为提示符,之后就可以输入MongoDB命令了。

打开或创建数据库students

>use students

在数据库中插入数据

>zhangsan = {‘name': ‘Zhangsan', ‘age': 18, ‘gender': ‘male'}
>db.students.insert(zhangsan)
>lisi = {‘name': ‘Lisi', ‘age': 19, ‘gender': ‘male'}
>db.students.insert(lisi)

查询数据库中的记录

>db.students.insert(lisi)

查询数据库中的记录

>db.students.find()

查看系统中所有数据库名称

>show dbs

3.pymongo模块

#! /usr/bin/env python3
# -*- coding:utf-8 -*-

# Author : MaYi
# Blog  : http://www.cnblogs.com/mayi0312/
# Date  : 2019-12-25
# Name  : test01
# Software : PyCharm
# Note  : 应用pymongo模块操作MongoDB数据库
# 导入模块
import pymongo

# 连接数据库,27017是默认端口
client = pymongo.MongoClient("localhost", 27017)
# 获取数据库
db = client.students

# 打印数据集合名称列表
print(db.collection_names)

# 获取数据集合
res = db.students.find()
print(res)
for item in res:
 # 遍历数据
 print(item)

wangwu = {"name": "Wangwu", "age": 20, "sex": "male"}
# 插入一条记录
db.students.insert(wangwu)

for item in db.students.find({"name": "Wangwu"}):
 # 指定查询条件
 print(item)

# 获取一条记录
print(db.students.find_one())
print(db.students.find_one({"name": "Wangwu"}))

# 记录总数
print(db.students.find().count())

# 删除一条记录
db.students.remove({"name": "Wangwu"})

# 创建索引
db.students.create_index([("name", pymongo.ASCENDING)])

# 更新数据库
db.students.update({"name": "Zhangsan"}, {"$set": {"age": 25}})

# 清空数据库
db.students.remove()

# 插入多条数据
zhangsan = {"name": "Zhangsan", "age": 20, "gender": "male"}
lisi = {"name": "Lisi", "age": 21, "gender": "male"}
wangwu = {"name": "Wangwu", "age": 22, "gender": "female"}
db.students.insert_many([zhangsan, lisi, wangwu])

# 对查询结果排序
for item in db.students.find().sort("name", pymongo.ASCENDING):
 print(item)

# 入口函数
if __name__ == '__main__':
 pass

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。