三、MongoDB客户端访问 – Shell方式
MongoDB是MongoDB自带的交互式Javascript shell,用来对MongoDB进行操作和管理的交互式环境。
使用 "./mongo --help" 可查看相关连接参数,下面将从常见的操作,如插入,查询,修改,删除等几个方面阐述MongoDB shell的用法
1、插入记录
> use my_mongodb
switched to db my_mongodb
> db.user.insert({uid:1,username:"Tom",age:25});
> db.user.insert({uid:2,username:"Jerry",age:25});
>
switched to db my_mongodb
> db.user.insert({uid:1,username:"Tom",age:25});
> db.user.insert({uid:2,username:"Jerry",age:25});
>
本例向数据库my_mongodb的表user中插入了2条记录。MongoDB会隐式的创建数据库my_mongodb和表user,所以这个例子没有建库和建表的过程,可以通过show dbs和show collections来查看数据库及表,具体如下:
> show dbs
admin (empty)
local (empty)
my_mongodb 0.0625GB ---隐式创建的数据库
> show collections
system.indexes
user ---隐式创建的表
>
admin (empty)
local (empty)
my_mongodb 0.0625GB ---隐式创建的数据库
> show collections
system.indexes
user ---隐式创建的表
>
2、查询记录
查询表中的全部记录:
> db.user.find();
{ "_id" : ObjectId("4f81a49b779282ca68fd8a59"), "uid" : 1, "username" : "Tom", "age" : 25 }
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 25 }
>
{ "_id" : ObjectId("4f81a49b779282ca68fd8a59"), "uid" : 1, "username" : "Tom", "age" : 25 }
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 25 }
>
查询用户名是 ”Jerry” 记录:
> db.user.find({username:"Jerry"});
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 25 }
>
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 25 }
>
3、修改记录
将用户ID是2的记录的年龄修改为100:
> db.user.update({uid:2},{$set:{age:100}}) ;
>
>
查询一下是否改过来了:
> db.user.find({uid:2});
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 100 }
>
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 100 }
>
4、删除记录
将用户ID是1的记录从表user中删除:
> db.user.remove({uid:1});
> db.user.find();
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 100 }
>
> db.user.find();
{ "_id" : ObjectId("4f81a4a1779282ca68fd8a5a"), "uid" : 2, "username" : "Jerry", "age" : 100 }
>
经验证,该记录确实被删除了。
MongoDB Shell的用法丰富且简单易懂,大家有兴趣可以到官网上去详细了解一下。