'''
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. jquery跳出当前的each循环的方式

    jquery跳出当前的each循环,使用如下方式: return false;--跳出所有循环:相当于 javascript 中的 break 效果. return true;--跳出当前循环,进入下 ...

  2. Android中让多个线程顺序执行探究

    线程调度是指按照特定机制为多个线程分配CPU的使用权. 有两种调度模型:分时调度模型和抢占式调度模型. 分时调度模型:是指让所有的线程轮流获得cpu的使用权,并且平均分配每个线程占用的CPU的时间片. ...

  3. Java进阶(十二)JDK版本错误之Unsupported major.minor version 51.0(jdk版本错误)

    错误:Unsupported major.minor version 51.0(jdk版本错误) 如果在win7下开发项目是使用的jdk版本和项目运行服务器jdk版本不同就会出现上面的问题. 用jdk ...

  4. RHEL6 安装KVM

    RHEL6 安装KVM # egrep '^flags.*(vmx|svm)' /proc/cpuinfo 有显示说明CPU支持VT功能 2.在主板BIOS中开启CPU的Virtual Technol ...

  5. 学习C++模板,初体验

    最近,看了很多码神级人物的代码,发现其代码很炫酷,尤其对模板的使用,作为小码农,感觉已经落伍了,所以应该发奋图强,好好学习和掌握模板这个东西. 模板是什么呢?有人说一个模板就是一个创建类或函数的蓝图或 ...

  6. 开源项目Git地址

     1.陈明.李建勋.邓覃思   fog-aliyun https://git.oschina.net/dengqinsi/fog-aliyun.git 2.吴俊.骆仲军.袁良福   CDN的H5助 ...

  7. PS 滤镜——极坐标变换到平面坐标

    %%% 极坐标到平面坐标 clc; clear all; close all; addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorith ...

  8. ThreadPoolExecutor运行机制

    最近发现几起对ThreadPoolExecutor的误用,其中包括自己,发现都是因为没有仔细看注释和内部运转机制,想当然的揣测参数导致,先看一下新建一个ThreadPoolExecutor的构建参数: ...

  9. 解决水平ListView在ScrollView中出现的滑动冲突

      解决的问题有两个:  1)实现水平滑动的ListView.重写AdapterView,上代码: package com.liucanwen.horizontallistview.view; imp ...

  10. php引用传值详解

    php的引用(就是在变量或者函数 .对象等前面加上&符号) 在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存 ...