'''
MogoDB数据库可以到官方网站https://www.mongodb.org/downloads下载,安装之后打开命令提示符环境并切换到MongoDB安装目录总的
server\3.2\bin文件夹,然后执行mongod --dbpath D:\data --journal --storageEngine = mmapvl 启动MongonDB,当然需要首先在D盘
新建文件夹dat,让刚才哪个命令提示符环境四种处于运行状态,然后再打开一个命令提示符环境,执行mongo命令连接MongoDB数据库,如果连接成功
的化会显示一个'>'符号作为提示,之后就可以输入MongoDB命令了,例如下面的命令可以打开或创建数据库students:
-----在命令行内------
'''
# use students
# #下面的命令用来在数据库总插入数据:
# zhangsan = {'name':'Zhangsan','age':18,'sex':'male'}
# db.students.insert(zhangsan)
# lisi = {'name':'Lisi','age':19,'sex':'male'}
# db.students.insert(lisi)
# #下面的命令用来查询数据库中的记录
# db.students.find()
# #下面的命令用来查看系统中所有数据的数据库名称:
# show dbs import pymongo #导入模块
client = pymongo.MongoClient('localhost',27017) #连接数据库,27017是默认端口
db = client.students #获取数据库
db.collection_names() #查看数据集合名称列表
students=db.students #获取数据集合
students.find() for item in students.find(): #遍历数据
print(item) wangwu = {'name':'wangwu','age':20,'sex':'male'}
students.insert(wangwu) #插入一条记录
for item in students.find({'name':'wangwu'}): #置顶查询条件
print(item) students.find_one() #获取一条记录
students.find().count() #记录总数
students.remove({'name':'Wangwu'}) #删除一条记录
for item in students.find():
print(item)
students.find().count()
students.create_index([('name',pymongo.ASCENDING)]) #创建索引
students.update({'name':'Zhangsan'},{'$set':{'age':25}}) #更新数据库
students.update({'age':25},{'$set':{'sex':'Female'}}) #更新数据库
students.remove() #清空数据库
students.find().count()
Zhangsan = {'name':'Zhangsan','age':20,'sex':'Male'}
Lisi = {'name':'Lisi','age':21,'sex':'Male'}
Wangwu = {'name':'Wangwu','age':22,'sex':'Female'}
students.insert_mangy([Zhangsan,Lisi,Wangwu]) #插入多条数据
for item in students.find().sort('name',pymongo.ASCENDING): #对查询结果进行排序
print(item)
for item in students.find().sort([('sex',pymongo.DESCENDING),('name',pymongo.ASCENDING)]):
print(item)

Python_mongoDB的更多相关文章

  1. pymongo的基本操作和使用

    MongoDB简介 MongoDB是一个开源的文档类型数据库,它具有高性能,高可用,可自动收缩的特性.MongoDB能够避免传统的ORM映射从而有助于开发. 文档 在MongoDB中,一行纪录就是一个 ...

随机推荐

  1. 【Qt编程】基于Qt的词典开发系列--后序

    从去年八月份到现在,总算完成了词典的编写以及相关技术文档的编辑工作.从整个过程来说,文档的编写比程序的实现耗费的时间更多.基于Qt的词典开发系列文章,大致包含了在编写词典软件过程中遇到的技术重点与难点 ...

  2. (三十二)DatePicker和自定义键盘

    DatePicker通过设置Locale属性可以设置语言(注意手机语言也会影响到它的显示). 如果通过代码创建DatePicker,又要设置属性,使用下面的代码,注意locale是个枚举,初始化要填写 ...

  3. (五)超级猜图Demo引出的细节

    第一部分: 1.按钮的细节,设置背景和前景图片后,要使得背景显示出来,可以设置内边距,影响内部内容. 显示 图片+文字,用button更简单. 问题是,如果不想按钮被点击,在属性面板取消勾选User ...

  4. ARM-linux汇编常用语法

    ARM linux常用汇编语法 ============================= 汇编语言每行的语法: lable: instruction ; comment 段操作: .section ...

  5. HBase压缩

    Hbase有两种压缩 策略:minor和major.Minor compactions通常选择几个临近的小的storefiles把他们重写成一个.Minors 不会丢掉已删除或者过期的cells,只有 ...

  6. Hadoop 数据排序(一)

    1.概述 1TB排序通常用于衡量分布式数据处理框架的数据处理能力.Terasort是Hadoop中的的一个排序作业.那么Terasort在Hadoop中是怎样实现的呢?本文主要从算法设计角度分析Ter ...

  7. cocos2d-x 游戏开发之有限状态机(FSM) (四)

    cocos2d-x 游戏开发之有限状态机(FSM) (四) 虽然我们了解了FSM,并且可以写自己的FSM,但是有更好的工具帮我们完成这个繁琐的工作.SMC(http://smc.sourceforge ...

  8. Android Studio 使用SlidingMenu侧滑菜单

    SlidingMenu是十分常用的开源框架,提供了一个滑动侧边栏的功能. 看了许多教程,都是往eclipse导入SlidingMenu库的,随后百度了几篇Android Studio导入的教程,鼓捣了 ...

  9. linux下安装ruby版本管理器RVM

    这里以ubuntu为例. 直接以如下命令行安装可能会不成功,因为rvm.io站点有时会被墙: curl -sSL https://get.rvm.io | bash -s stable #或者 cur ...

  10. 【59】Quartz+Spring框架详解

    什么是Quartz Quartz是一个作业调度系统(a job scheduling system),Quartz不但可以集成到其他的软件系统中,而且也可以独立运行的:在本文中"job sc ...