'''
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. H5学习之旅-H5的元素属性(3)

    1.标签可以拥有属性,为标签提供更多的信息 2.属性以键值对的形式呈现例如:href = "www.baidu.com" 3.常用标签属性 :align对其方式 ,对齐方式,包括上 ...

  2. [Ext.Net] 1.x GridPanel列数过多给Menu菜单加滚动条

    转自:http://www.ext.net.cn/thread-1944-1-2.html 当GirdPanel列数过多,查看列的显示隐藏时会出现下面下面情况,有部分超出了界面被遮罩住了   要解决这 ...

  3. tomcat整合apache

    历时4个多小时,终于把tomcat与apache整合起来了. 中间出了各种各样的问题,现记录一下,也希望能对后来者有点帮助. 背景 apache与tomcat的区别联系大家都知道: tomcat能处理 ...

  4. Github Coding Developer Book For LiuGuiLinAndroid

    Github Coding Developer Book For LiuGuiLinAndroid 收集了这么多开源的PDF,也许会帮到一些人,现在里面的书籍还不是很多,我也在一点点的上传,才上传不到 ...

  5. java垃圾回收机制,以及常用的回收算法

    记得之前去平安面试的时候,面试官问到了垃圾回收,我当时也就是说说了垃圾回收的原理,但是具体有哪些实现策略,我当时是懵的. 概念: Java的垃圾回收机制是Java虚拟机提供的能力,用于在空闲时间以不定 ...

  6. Retinex图像增强算法

    前一段时间研究了一下图像增强算法,发现Retinex理论在彩色图像增强.图像去雾.彩色图像恢复方面拥有很好的效果,下面介绍一下我对该算法的理解. Retinex理论 Retinex理论始于Land和M ...

  7. Erlang 编写 Kafka 客户端之最简单入门

    Erlang 编写 Kafka 客户端之最简单入门 费劲周折,终于测通了 erlang 向kafka 发送消息,使用了ekaf 库,参考: An advanced but simple to use, ...

  8. 用O_APPEND标志open一个文件,能否用lseek在任意位置读写

    结论比较简单,用O_APPEND打开后,write操作是一个原子操作,所以每次都会自动把偏移量移到文件末尾,所以用lseek不能在任意位置write.但是可以用lseek在任意位置开始读.下面用代码测 ...

  9. 可靠联机的 TCP 协议

    可靠联机的 TCP 协议 在前面的 OSI 七层协议当中,在网络层的 IP 之上则是传送层,而传送层的数据打包成什么? 最常见的就是 TCP 封包了.这个 TCP 封包数据必须要能够放到 IP 的数据 ...

  10. 机房收费系统之导出Excel

            刚开始接触机房收费的时候,连上数据库,配置ODBC,登陆进去,那窗体叫一个多,不由地有种害怕的感觉,但是有人说,每天努力一点点,就会进步一点点,不会的就会少一点点,会的就会多一点点.. ...