python连接mongodb操作数据示例(mongodb数据库配置类)
一、相关代码
数据库配置类 MongoDBConn.py
代码如下:
#encoding=utf-8 ''' Mongo Conn连接类 ''' import pymongo class DBConn: conn = None servers = "mongodb://localhost:27017" def connect(self): self.conn = pymongo.Connection(self.servers) def close(self): return self.conn.disconnect() def getConn(self): return self.conn
MongoDemo.py 类
代码如下:
#encoding=utf-8 ''' Mongo操作Demo Done: ''' import MongoDBConn dbconn = MongoDBConn.DBConn() conn = None lifeba_users = None def process(): #建立连接 dbconn.connect() global conn conn = dbconn.getConn() #列出server_info信息 print conn.server_info() #列出全部数据库 databases = conn.database_names() print databases #删除库和表 dropTable() #添加数据库lifeba及表(collections)users createTable() #插入数据 insertDatas() #更新数据 updateData() #查询数据 queryData() #删除数据 deleteData() #释放连接 dbconn.close() def insertDatas(): datas=[{"name":"steven1","realname":"测试1","age":25}, {"name":"steven2","realname":"测试2","age":26}, {"name":"steven1","realname":"测试3","age":23}] lifeba_users.insert(datas) def updateData(): '''只修改最后一条匹配到的数据 第3个参数设置为True,没找到该数据就添加一条 第4个参数设置为True,有多条记录就不更新 ''' lifeba_users.update({'name':'steven1'},{'$set':{'realname':'测试1修改'}}, False,False) def deleteData(): lifeba_users.remove({'name':'steven1'}) def queryData(): #查询全部数据 rows = lifeba_users.find() printResult(rows) #查询一个数据 print lifeba_users.find_one() #带条件查询 printResult(lifeba_users.find({'name':'steven2'})) printResult(lifeba_users.find({'name':{'$gt':25}})) def createTable(): '''创建库和表''' global lifeba_users lifeba_users = conn.lifeba.users def dropTable(): '''删除表''' global conn conn.drop_database("lifeba") def printResult(rows): for row in rows: for key in row.keys():#遍历字典 print row[key], #加, 不换行打印 print '' if __name__ == '__main__': process()
相关推荐
lbyd0 2020-11-17
sushuanglei 2020-11-12
BigYellow 2020-11-16
我心似明月 2020-11-09
sdmzhu 2020-09-01
zhushenghan 2020-11-09
sunnnyduan 2020-10-16
不要皱眉 2020-10-14
xiaohai 2020-09-29
songxiugongwang 2020-09-22
萌亖 2020-09-17
LuckyLXG 2020-09-08
mkhhxxttxs 2020-09-16
xiaohai 2020-09-16
newcome 2020-09-09
jaylong 2020-08-19
大秦铁骑 2020-08-19
thatway 2020-08-19