欢迎来到天天文库
浏览记录
ID:36858256
大小:928.28 KB
页数:26页
时间:2019-05-16
《《MongoDB实战》第2版-第2章-JavaScript命令操作Mongodb》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、官方团队出品NoSQL排名第一《Mongodb实战》第2版互联网架构师必备1第2章通过JavaScriptshell操作MongoDBMongoDBthroughtheJavaScriptshell本章内容MongoDBshell里使用CRUD操作构建索引和使用explain()掌握基本管理获取帮助前一章提到了MongoDB运行的经验。如果想学习更多关于实战操作的介绍,本章内容就是。使用MongoDBshell,本章通过一系列实际操作来教会大家基本的数据库知识。你将会学习如何新增、读取、更
2、新和删除(CRUD)文档,在这个过程中熟悉MongoDB查询语言。此外,我们还会初步学习数据库索引,以及如何使用它们来优化查询。然后我们将会学习一些基本的管理命令,建议一些使用MongoDBshell获取帮助的方式。可以把本章作为已经介绍的概念的详细阐述和MongoDBshell操作实战。MongoDBshell是实验数据库的帮助工具,可以运行ad-hoc查询、管理MongoDB实例。当使用MongoDB开发应用时,我们会使用语言驱动而不是shell,但是shell可以用来做测试和重构这些查询。任
3、意的MongoDB查询都可以在shell里运行。如果你是MongoDBshell新手,也不要担心,记住它提供了你期望的所有功能;它允许你检查和操作数据,以及管理数据库服务器。MongoDBshell在查询语言方面不同于其他数据库,它没有采用标准的SQL查询语言,我们可以使用Javascript语言和简单的API操作数据库。这意味着你可以在shell里编写脚本与MongoDB数据库交互。如果不熟悉Javascript,也没有关系,只需要简单的语法就可以使用shell的功能,本章里所有的例子都会详细解
4、释。MongoDBshell里提供的API与各个语言驱动里提供的接口一样,所以shell里编写的查询代码很容易移植到自2
5、错误!文档中没有指定样式的文字。:通过JavaScriptshell操作MongoDB己的应用程序代码里。如果跟着例子进行操作,就会收获很大、受益匪浅,但是必须先安装MongoDB。安装步骤可以在附录A里找到。2.1深入MongoDBshellDivingintotheMongoDBshell用MongoDBJavaScriptshell操作数据库非常简单,而且能够对于文档、集
6、合和数据库查询语言有个实际的感知。下面对MongoDB进行详细介绍。我们将会从获取和运行shell开始,然后学习用JavaScript如何表示文档,学习如何插入这些文档到MongoDB集合中。要检验这些插入命令,就需要实际查询集合数据、更新操作。最后,通过学习删除数据和集合来完成CRUD操作的练习。2.1.1启动shell参考附录A,可以很快在本机安装一个可以工作的MongoDB服务和一个运行的mongod实例。通过运行mongo执行文件启动MongoDBshell:mongo如果shell程序启
7、动成功,你的屏幕看起来就会如图2.1所示。shell顶部显示的是运行的MongoDB服务器的版本信息,后面是选择连接的当前数据库信息。图2.1启动MongoDBJavaScriptshell如果你熟悉JavaScript,就可以开始输入代码,然后探索学习shell。或者,看看如何运行MongoDB数据库的第一个操作命令。2.1深入MongoDBshell
8、32.1.2数据库、集合和文档正如我们知道的,MongoDB把数据存储在文档中,数据可以以JSON(JavaScriptObjectNotati
9、on)格式输出。你可能喜欢在不同的地方存储不同类型的文档,比如users和orders。这意味着MongoDB需要一种方式来分类文档,这与关系型数据库RDBMS中的表类似。在MongoDB数据库中,我们称之为集合(collection)。MongoDB把集合分别存储在不同的数据库中。与传统的SQL数据库不同,MongoDB的数据库只区分集合的命名空间。要查询MongoDB数据库,需要知道存储文档数据的数据库和集合的名字。如果开始没有指定数据库,shell会选择默认的test数据库。为了与后面的练习
10、例子统一,我们切换到tutorial数据库:>usetutorialswitchedtodbtutorial你会看到一个切换数据库成功的提示信息。为什么MongoDB有数据库和集合?答案取决于MongoDB如何在磁盘上写数据。数据库中有的集合都分组保存在相同的文件中,所以从内存的角度说,这是合理的,保证相关的结合在同一个库里。你可能还希望不同的应用访问同一个集合(多租户),而且保持数据组织性很有帮助,以备未来需求。创建数据库和集合你可能好奇,怎样才能切换到tutorial数据库而不
此文档下载收益归作者所有