注意: 在 MongoDB 中,数据库只有在内容插入后才会创建! 就是说,数据库创建后要创建集合(数据表)并插入一个文档(记录),数据库才会真正创建。
注意: 在 MongoDB 中,集合只有在内容插入后才会创建! 就是说,创建集合(数据表)后要再插入一个文档(记录),集合才会真正创建。
一,增
import pymongo
my_client = pymongo.MongoClient("mongodb://localhost:27017/")
# db_list = my_client.list_database_names()
# for db in db_list:
# print(db)
my_db = my_client['vdb']
# col_list = my_db.list_collection_names()
#
# for col in col_list:
# print(col)
my_col = my_db['sites']
# my_dict = {'baidu': 'http://www.baidu.com', 'google': 'goole.com'}
my_dict_list = [
{'yahoo': 'yahoo.com', 'jj': 'jj.com'},
{'off': 'off.com', 'hua': 'hua.com'}
]
res = my_col.insert_many(my_dict_list)
print(res.inserted_ids)
二,删
import pymongo
my_client = pymongo.MongoClient('mongodb://localhost:27017')
my_db = my_client['vdb']
my_col = my_db['sites']
# my_query = {'yahoo': 'yahoo.com'}
# my_col.delete_one(my_query) # 删除一条
# my_query = {'baidu': {'$regex': '^w'}} # 删除以w字符开头的所有文档
# my_col.delete_many(my_query) # 删除多条
my_col.delete_many({}) # 清空文档
my_col.drop() # 删除这个集合
for data in my_col.find():
print(data)
三,改
import pymongo
my_client = pymongo.MongoClient("mongodb://localhost:27017")
my_db = my_client['vdb']
my_col = my_db['sites']
# my_query = {'baidu': 'http://www.baidu.com'}
my_query = {'baidu': {'$regex': '^h'}}
new_value = {'$set': {'baidu': 'www.baidu.com'}}
# res = my_col.update_one(my_query, new_value) # 修改查询到的首行
res = my_col.update_many(my_query, new_value) # 修改查询到的所有行
print(res.modified_count)
for data in my_col.find():
print(data)
四,查
import pymongo
my_client = pymongo.MongoClient('mongodb://localhost:27017')
my_db = my_client['vdb']
my_col = my_db['sites']
# data = my_col.find_one() # 查询单条数据
# print(data)
# datas = my_col.find() # 查询全部数据
# for data in datas:
# print(data)
# datas = my_col.find({}, {"_id": 0, "baidu": 1})
# for data in datas:
# print(data)
datas = my_col.find({"baidu": "http://www.baidu.com"}).limit(1)
for data in datas:
print(data)