进行交互。运行该shell $./mongod $./mongod 成功连接的输出如下: jerryMacBookhome:~ jerry$ mongo MongoDB shell version: 2.0.1 connecting to: test jerryMacBookhome:~ jerry$ mongo MongoDB shell version: 2.0.1 connecting to: test shell是一个java script解释器,可以运行任何java script程序。当然这不是我们关注的重点。我们关注的是怎么在MongoDB中完成基本的CRUD操作。 2.3 基本CRUD操作 在进行操作之前,还需要补充一点基本知识。MongoDB中会使用一个变量db存储当前使用的数据库。我们连接到MongoDB数据库,默认会连接到test数据库。如果需要换到别的数据库,可以使用use dbname命令: > use foobar switched to db foobar > use foobar switched to db foobar 2.3.1 C reate:创建 我们假设需要在Persons集合中保存人员信息(姓名、年龄、信息保存日期)。可以先创建一个JS对象,然后将它插入数据库对应集合: > p = {"name":"wawlian","age":23,"CDate":new Date()}; { "name" : "wawlian", "age" : 23, "CDate" : ISODate("2011-12-01T17:13:45.671Z") } > db.Persons.insert(p); > p = {"name":"wawlian","age":23,"CDate":new Date()}; { "name" : "wawlian", "age" : 23, "CDate" : ISODate("2011-12-01T17:13:45.671Z") } > db.Persons.insert(p); 上面{}中的部分是执行上一条指令的输出。这个人员信息已经保存进去了。此外,我们之前并未创建集合Persons,这是我们在保存人员信息时根据命令,mongodb自己为我们创建的。 2.3.2 R etrieve:检索 可以通过调用集合的find()方法查询所有记录: 我们之前插入的记录已经查看到了。我们发现,多出了一个键值对:_id/ObjectId。这是MongoDB为每个文档添加的唯一标识。 > db.Persons.find(); { "_id" : ObjectId("4ed7b5ce4f33e90801872724"), "name" : "wawlian", "age" : 23, "CDate" : ISODate("2011-12-01T17:13:45.671Z") } > db.Persons.find(); { "_id" : ObjectId("4ed7b5ce4f33e90801872724"), "name" : "wawlian", "age" : 23, "CDate" : ISODate("2011-12-01T17:13:45.671Z") } 2.3.3 U pdate:更新 更新使用的是集合的update()方法。当然,既然要更新,总得让数据库知道该更新谁吧。所以这个方法有两个参数:更新条件、新的文档。直接看代码: > db.Persons.update({"name":"wawlian"},{"name":"xiaobai","age":"18"}); > db.Persons.find(); { "_id" : ObjectId("4ed7b5ce4f33e90801872724"), "name" : "xiaobai", "age" : "18" } > > db.Persons.update({"name":"wawlian"},{"name":"xiaobai","age":"18"}); > db.Persons.find(); { "_id" : ObjectId("4ed7b5ce4f33e90801872724"), "name" : "xiaobai", "age" : "18" } > 上面的代码是将"name"为"wawlian"的文档替换为后一个文档。 2.3.4 D elete:删除 删除文档只需要使用集合的remove()方法。remove()方法需要传递一个参数:删除条件。这一点与上面的update()方法类似。 > db.Persons.remove({"name":"xiaobai"}); > db.Persons.find(); > > db.Persons.remove({"name":"xiaobai"}); > db.Persons.find(); > 删除之后再查看记录已经没有了。 以上是MongoDB的入门学习。随着学习的继续,我还会进一步介绍MongoDB。 参考书目: 《MongoDB:The Definitive Guide》
摘自 wawlian说
|