轻松入门MongoDB!-pymongo-新建数据库-新建数据库-PyMongo-教你使用 (轻松入门mac 七宝店讲课时间表)

教程大全 2025-07-08 21:43:44 浏览

随着云计算和大数据的飞速发展,关系型数据库已经无法满足人类对于数据存储和操作的需求。面对这个问题,MongoDB作为非关系型数据库迅速崛起。MongoDB具有高可靠性、高性能、易扩展等特点,拥有广泛的应用场景,比如Web应用、移动后端、物联网等领域。本文将介绍如何使用PyMongo来轻松入门MongoDB。

1. 安装MongoDB和PyMongo

在使用MongoDB和PyMongo之前,需要先安装它们。在这里我们以Ubuntu系统为例,安装MongoDB的命令如下:

sudo apt-get install mongodb

安装PyMongo的命令如下:

pip install pymongo

如果pip不能安装PyMongo,可以使用以下命令来安装:

sudo apt install python3-pymongo

2. 连接到MongoDB

在使用PyMongo之前,我们需要先连接到MongoDB。PyMongo提供了MongoClient类来进行连接。下面是连接的代码:

from pymongo import MongoClient

client = MongoClient(‘mongodb://localhost:27017/’)

这里的’localhost’表示本地,’27017’是MongoDB的默认端口号。如果MongoDB运行在另外一台机器上,那么需要将’localhost’改为该机器的IP地址。

3. 新建数据库

与关系型数据库类似,MongoDB也需要先创建数据库,然后再往里面添加和数据。新建数据库的代码如下:

db = client[‘mydatabase’]

这里的‘mydatabase’是新建的数据库名称。如果这个数据库不存在,MongoDB会自动创建它。

4. 新建

MongoDB中的类似于关系型数据库中的表,是存储相同类型数据的容器。为了新建一个,我们需要先选择一个数据库,然后再创建。下面是新建的代码:

mycol = db[‘customers’]

这里的‘customers’是名称。如果这个不存在,MongoDB会自动创建它。

5. 新增数据

现在我们已经有了数据库和,就可以往里面添加数据了。PyMongo提供了insert_one()和insert_many()两个方法来添加数据。insert_one()用于添加单个文档,insert_many()用于添加多个文档。下面是添加单个文档的代码:

my_dict = {‘name’: ‘John’, ‘address’: ‘Highway 37’}

x = mycol.insert_one(my_dict)

print(x.inserted_id)

这个代码将在‘customers’中添加一个名为‘John’,地址为‘Highway 37’的文档。inserted_id是该文档在中的唯一标识符。

如果要添加多个文档,可以使用以下代码:

{‘name’: ‘Amy’, ‘address’: ‘Apple st 652’},

{‘name’: ‘Hannah’, ‘address’: ‘Mountn 21’},

{‘name’: ‘Michael’, ‘address’: ‘Valley 345’},

{‘name’: ‘Sandy’, ‘address’: ‘Ocean blvd 2’},

{‘name’: ‘Betty’, ‘address’: ‘Green Grass 1’},

{‘name’: ‘Richard’, ‘address’: ‘Sky st 331’}

x = mycol.insert_many(my_list)

print(x.inserted_ids)

这个代码将在‘customers’中添加多个文档。inserted_ids是这些文档在中的唯一标识符的列表。

6. 查询数据

我们已经成功地往中添加了数据,现在来看一下如何查询数据。PyMongo提供了find_one()和find()两个方法来查询数据。find_one()用于查询单个文档,find()用于查询多个文档。下面是查询单个文档的代码:

x = mycol.find_one()

这个代码将返回‘customers’中的之一个文档。

如果要查询多个文档,可以使用以下代码:

for x in mycol.find():

这个代码将返回‘customers’中所有的文档。

7. 更新数据

查询数据只是MongoDB的一部分功能,我们还需要学会如何更新数据。PyMongo提供了update_one()和update_many()两个方法来更新数据。update_one()用于更新单个文档,update_many()用于更新多个文档。下面是更新单个文档的代码:

mycol.update_one({‘name’: ‘John’}, {‘$set’: {‘address’: ‘Canyon 123’}})

for x in mycol.find():

这个代码将把‘customers’中名字为‘John’的文档的地址改为‘Canyon 123’。

如果要更新多个文档,可以使用以下代码:

myquery = {‘address’: {‘$regex’: ‘^S’}}

newvalues = {‘$set’: {‘name’: ‘Minnie’}}

x = mycol.update_many(myquery, newvalues)

print(x.modified_count, ‘文档已修改’)

这个代码将把‘customers’中所有地址以‘S’开头的文档的名字改为‘Minnie’。

8. 删除数据

最后一个操作是删除数据。PyMongo提供了delete_one()和delete_many()两个方法来删除数据。delete_one()用于删除单个文档,delete_many()用于删除多个文档。下面是删除单个文档的代码:

myquery = {‘address’: ‘Mountn 21’}

mycol.delete_one(myquery)

for x in mycol.find():

这个代码将删除‘customers’中地址为‘Mountn 21’的文档。

如果要删除多个文档,可以使用以下代码:

myquery = {‘address’: {‘$regex’: ‘^S’}}

x = mycol.delete_many(myquery)

print(x.deleted_count, ‘文档已删除’)

这个代码将删除‘customers’中所有地址以‘S’开头的文档。

本文介绍了使用PyMongo来新建数据库、新建、新增数据、查询数据、更新数据和删除数据的方法。MongoDB的使用方式与传统的关系型数据库有所不同,但学会使用之后,MongoDB的高可靠性、高性能和易扩展性可以帮助我们解决各种数据存储和操作上的难题,使我们更好地应对日益增长的数据量。

相关问题拓展阅读:

轻松入门MongoDB!

怎么使用python编写根据输入查询条件查询mongoDB数据库?

试试find_one(“{‘UserId’:(%d)}”,max_time_ms=100)

hid=239526

cur = my_set.find({“伏李纳sourceID”:1,”downloadDate”:””,”bwHotelID”:hid},{“CheckIn”:1,”_id”:0}).sort()

查询条件参数化, 这里是josn格式,不是这字符串,不用占位符之类的东西

你要知道json对扰迟象就等缺没同于你的python代码

你在它那直接用变量代替就行

关于pymongo 新建数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

香港服务器首选树叶云,2H2G首月10元开通。树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云 服务器 和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。


mongodb怎么查询一天中24个小时内的各个数据集合

你需要有一个字段标示写入数据库的时间,然后查询的时候,设定查询时间段({createTime:{$gt:2014-10-29 0:0:0}}) // 大于某个时间({createTime:{$lt:2014-10-29 0:0:0}}) // 小于某个时间({$and:[{createTime:{$gt:2014-10-29 0:0:0}},{createTime:{$lt:2014-10-29 0:0:0}}]}) // 某个时间段由于Mongodb不是关系型数据库文件,实际上,它并不存在传统关系型数据库中的所谓“数据库”的概念,但不用担心,当你第一次新增数据时,mongodb就会以collection集合的形式进行保存和新建,而不需要你手工去新建立。

帮我找三篇暑假记叙文,普通点的,每篇至少500字,字数不用太多,很急!!!谢啦!!

1)——电影《网络少年》观后感 7月15日下午,我和爸爸冒着炎炎烈日来到长沙电影城,观看了教育少儿的影片——《网络少年》。 这部影片讲述的是一位老师帮助一群沉迷于网络的孩子找回合理的上网方式、了解网络的正确用途,把网络从“坏朋友”变成“好朋友”的故事。 小乐、大伟等同学是五个中学生,他们曾经很爱学习,是班上的“网络高手”,也是家长老师眼中的乖孩子。 但自从迷上网络游戏和聊天之后,他们被电脑里那看似精彩刺激的虚拟游戏所俘虏,上课没精打采,成绩直线下滑。 他们的辅导老师索老师在了解这一情况后,决心用自己的力量来拯救他们。 索老师带领孩子们新建了名为“网络少年”的网站,教孩子们学习网络知识、正确上网,不在虚拟的网络海洋里沉沦。 一天,小乐在和朋友聊天的时候突然发现有个身份不明的人偷偷进入金融中心的数据库。 小乐觉得其中有阴谋,便以最快的速度通知了警方。 警方通过网络找到黑客,查获犯罪记录后,将其绳之以法。 网络是一把双刃剑,它对你有许多帮助,也有不少害处。 它虽然表面上不会对你造成伤害,但如若你不能正确地利用网络资源,而是沉浸在它虚拟的游戏世界中,你就会像吸食了鸦片一样。 要想戒掉,难! 有人说,堵。 只把网线、电源等通通拔了,少给孩子零用钱,才能戒掉他(她)的网瘾。 这种法子行的通吗?万一他们偷家里的钱呢?俗话说:“日防夜防,家贼难防。 ”如果逼得他们去外面偷、到外面抢就更不得了了!有人说,疏堵结合。 规定他(她)的上网时间,除查资料外,不得上其他网站浏览。 那么他(她)会不会在父母不注意的时候去私自浏览其它的网站吗?父母敢确定吗?最好的办法是重在疏。 网照上,不过最好在父母的监护下登陆网站,一贯地去堵不能从根本上解决问题。 希望我们每一个人都能认清楚上网的利弊,合理利用网络资源、健康上网,把网络变成帮助我们的好朋友,不要做坠入虚拟时空的俘虏! 2)暑假,那次遭遇暴雨的事深深地留在了我记忆的深处. 那是连着几天酷热难熬的日子之后的傍晚,我和妈妈在玉渊潭散步.走到租船码头那儿,天边开始响起了沉闷的雷声,渐渐密集起来,天也很快昏暗下来,一道闪电过后,哗哗啦啦地下起雨.妈妈撑开平时放在包里的一把遮阳伞,护着我赶紧往前走,想找个地方躲雨.还没走多远,我突然听到了一阵由远及近的像是许多黄豆翻倒在地的声音,还没等我反应过来,大雨已经噼噼啪啪地砸在了我们的伞上.一瞬间,天地之间挂起了雨帘,地上溅起了白色的雨花,我们的伞太小了,抵挡不住这么大的雨,伞里也下起了小雨,风更是夹着雨打向我们.我心里只有一个愿望:要是有个地方能躲雨该多好!这时,有个警察叔叔迎面走来说:前面是我们的公园派出所,这附近没有别的建筑,快跟我走!并将自己的雨伞替我遮挡风雨.他领着我们走进派出所的小院,里面的警察叔叔热情地将我和妈妈让进屋,送我们的叔叔半边身子已经湿透了.再见,小朋友!叔叔转身就走了.后来,我知道这是刚下班的警察叔叔,还要赶回家呢.阿嚏!妈妈打了个喷嚏,我也全身一激灵.我和妈妈衣服穿得单薄加上雨水打湿了一些地方,被屋里空调的冷风一吹,竟然有点冷.把空调关上吧,警察叔叔关切地说,起身要关空调.没关系,妈妈制止说:你们穿着正装呢.没事,你们要感冒了可不好,还有孩子呢!叔叔关上空调,我不感到冷了.看着外面下得越来越大的雨,我心里充满了感激:要不是警察叔叔,我们不知道回淋成怎样呢.叔叔在帮助我们的时候,是那么平和,那么自然,像是他们日常工作中经历的一件微不足道的小事.我脑子里闪现出这么一句话:有困难,找民警.在我们遇到困难的时候,是民警叔叔主动地伸出了援助之手. 过了很久,雨渐渐小了,我和妈妈同民警叔叔告别.我看见每个警察叔叔的额头上都有细细的汗珠.感谢您,尊敬的警察叔叔! 3)暑假里的烦恼事 (晕个,这还是老早的了^^^^^^^^^^^^^^) 门又响了——不用说,准是爸爸!我看一眼表,哇,又创记录了,这回8点40就回来了。 他早上7点半才上班,上一个小时就回来,那什么,也太…… 自从过年时,舅舅和我爸爸妈妈谈了一些炒股的事后,我爸爸就动起了炒股的念头。 这个暑假,他都在为电脑屏幕上的上上下下的“山峰”操心。 虽然暑假他们单位没放假,但他的办法多得很!每天早上偷偷从单位溜回来,早上9点准时看股票,10点40回单位,11点又匆匆赶回来。 下午就更不用说了,本来他2点就要上班,可他却坐在电脑前不走,为了那几支涨跌无常的股票担心。 有时不得不去上班时,他总会编织各种各样的借口,我听过好几次他和别人打电话:“喂,我下午家里有点急事,能不能迟些时候再去上班”或者是“我现在在外面买材料,困难去迟点,你们帮我请个假”。 关掉电话后,又再次坐回电脑前,重新开始“战斗”。 哎,烦人的股票,钱没能赚多少,可把我害苦了。 爸爸的心情好坏是由股票的涨跌决定的。 若是哪天,他的股票涨停了,就处处顺心如意,开心得不得了,对我也不是那么严苛了,但要是他的股票跌了,我的梯子可就没法过了。 他一天到晚就会阴沉着脸,放东西的时候总会故意猛地一拍,仿佛是在发泄心中的不满。 有时,他甚至会把气撒到我头上。 有一回,我要喝水,可杯子里一滴水都没有了,我只好先到了一杯热水,慢慢等它变冷。 爸爸看见了,高声斥责我:“你这个笨蛋,每次水怎么都全部喝完,不为后来考虑,我从你喝水就看出你将来肯定坐吃山空!”当时的我真是委屈极了。 后来,我看了一眼电脑屏幕,爸爸买的那支福田汽车的股票正在直线下跌中。 怪不得他火大了。 小散户的大悲哀不过如此。 爸爸每天都是这样喜怒无常,真的让我很烦恼。 他想赚钱的心情我可以理解,但如果他能认真工作,不就不用天天为了几支股票操心吗?况且,炒股的人得拥有一个好心态,不要涨了就高兴,跌了就生气,这样即使赚了钱,心情也不是很好。 况且股票跌了也不是人为所能阻止的,更不能将怨气撒到别人头上。 哎,这个暑假,我有一半是在斥责声中度过的,如此烦恼。 现在开学了,爸爸依然故我,痴迷于电脑上的上上下下的折线,有时候真的搞不懂大人——至少现在眼不见心不烦了。

打开1433端口有坏处吗??

这个端口入侵的方法太老了,已经不可能成功的,我刚刚开始学黑客的时候也用过,根本找不到肉鸡简单的说下原理,本身1433是msSQL这个服务对应的一个端口。 那么本身他并不是漏洞,但是由于MSSQL中的SA帐号默认的权限是system权限,因此当我们找到SA帐号的密码的时候我们也就等于得到了一个cmdshell,接着就可以干我们想干的事情了。 当然这些的前提就基于MSSQL的组件没有被删除,SA没有被降权。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐