MongoDB hello world example
2015-09-28 22:37
561 查看
A quick guide to show you how to do basic operations like create, update, find, delete record and indexing in MongoDB. This example is using MongoDB 2.0.7, running on Mac OS X 10.8, both MongoDB client and server console are run on localhost, same machine.
Uses
In below example, after you inserted a single record, database “
Three database commands you should know.
show dbs – List all databases.
use db_name – Switches to db_name.
show collections – List all tables in the current selected database.
Note
In MongoDB, collection means table in SQL.
6.1 List all records from table “
6.2 Find records where username is “
Note
To delete all records from a table, uses
To drop the table, uses
8.2 To create an index, uses
8.3 To drop an index, uses
8.4 To create an unique index, uses
10.2
10.3
10.4
1. Install MongoDB
Install MongoDB on Windows, Ubuntu or Mac OS X. The installation is easy, basically just download the MongoDB zip file, extra and run the command –$MongoDB-folder/bin/mongod.
Uses mongod
to start MongoDB.
$./mongod Tue Sep 11 21:55:36 [initandlisten] MongoDB starting : pid=72280 port=27017 dbpath=/data/db/ 64-bit host=Yongs-MacBook-Air.local Tue Sep 11 21:55:36 [initandlisten] db version v2.0.7, pdfile version 4.5 Tue Sep 11 21:55:36 [initandlisten] options: {} Tue Sep 11 21:55:36 [initandlisten] journal dir=/data/db/journal Tue Sep 11 21:55:36 [initandlisten] recover : no journal files present, no recovery needed Tue Sep 11 21:55:36 [websvr] admin web console waiting for connections on port 28017 Tue Sep 11 21:55:36 [initandlisten] waiting for connections on port 27017
2. Connect MongoDB
To connect MongoDB, uses$MongoDB-folder/bin/mongo
$ ./mongo MongoDB shell version: 2.0.7 connecting to: test
3. Create a database or table (collection)
In MongoDB, both database and table are created automatically when the first time data is inserted. Uses use database-name, to switch to your database (even this is not created yet).In below example, after you inserted a single record, database “
mkyong”, and table “
users” are created on the fly.
$ ./mongo MongoDB shell version: 2.0.7 connecting to: test
> use mkyong
switched to db mkyong
> db.users.insert({username:"mkyong",password:"123456"})
> db.users.find()
{ "_id" : ObjectId("504f45cd17f6c778042c3c07"), "username" : "mkyong", "password" : "123456" }
Three database commands you should know.
show dbs – List all databases.
use db_name – Switches to db_name.
show collections – List all tables in the current selected database.
Note
In MongoDB, collection means table in SQL.
4. Insert A Record
To insert a record, usesdb.tablename.insert({data})or
db.tablename.save({data}), both works, no idea why MongoDB created both.
> db.users.save({username:"google",password:"google123"}) > db.users.find() { "_id" : ObjectId("504f45cd17f6c778042c3c07"), "username" : "mkyong", "password" : "123456" } { "_id" : ObjectId("504f48ea17f6c778042c3c0a"), "username" : "google", "password" : "google123" }
5. Update A Record
To update a record, usesdb.tablename.update({criteria},{$set: {new value}}). In below example, the password of username : “
mkyong” is updated.
> db.users.update({username:"mkyong"},{$set:{password:"hello123"}}) > db.users.find() { "_id" : ObjectId("504f48ea17f6c778042c3c0a"), "username" : "google", "password" : "google123" } { "_id" : ObjectId("504f45cd17f6c778042c3c07"), "password" : "hello123", "username" : "mkyong" }
6. Find Records
To find or query records, usesdb.tablename.find({criteria}).
6.1 List all records from table “users
”.
> db.users.find() { "_id" : ObjectId("504f48ea17f6c778042c3c0a"), "username" : "google", "password" : "google123" } { "_id" : ObjectId("504f45cd17f6c778042c3c07"), "password" : "hello123", "username" : "mkyong" }
6.2 Find records where username is “google
”
> db.users.find({username:"google"}) { "_id" : ObjectId("504f48ea17f6c778042c3c0a"), "username" : "google", "password" : "google123" }
6.3 Find records where username’s length is less than or equal to 2
db.users.find({$where:"this.username.length<=2"})
6.4 Find records where username field is existed.
db.users.find({username:{$exists : true}})
7. Delete Record
To delete a record, usesdb.tablename.remove({criteria}). In below example, the record of username “
> db.users.remove({username:"google"}) > db.users.find() { "_id" : ObjectId("504f45cd17f6c778042c3c07"), "password" : "hello123", "username" : "mkyong" }
Note
To delete all records from a table, uses
db.tablename.remove().
To drop the table, uses
db.tablename.drop().
8. Indexing
Index may help you increase the speed of querying data.8.1 List all indexes of table “users”, by default the column “_id” is always the primary key and created automatically.
> db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "ns" : "mkyong.users", "name" : "_id_" } ] >
8.2 To create an index, uses db.tablename.ensureIndex(column)
. In below example, an index is created on column “username
“.
> db.users.ensureIndex({username:1}) > db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "ns" : "mkyong.users", "name" : "_id_" }, { "v" : 1, "key" : { "username" : 1 }, "ns" : "mkyong.users", "name" : "username_1" } ]
8.3 To drop an index, uses db.tablename.dropIndex(column)
. In below example, the index on column “username” is deleted or dropped.
> db.users.dropIndex({username:1})
{ "nIndexesWas" : 2, "ok" : 1 }
> db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "ns" : "mkyong.users", "name" : "_id_" } ] >
8.4 To create an unique index, uses db.tablename.ensureIndex({column},{unique:true})
. In below example, an unique index is created on column “username
“.
> db.users.ensureIndex({username:1},{unique:true}); > db.users.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "ns" : "mkyong.users", "name" : "_id_" }, { "v" : 1, "key" : { "username" : 1 }, "unique" : true, "ns" : "mkyong.users", "name" : "username_1" } ]
10. Help
At last, useshelp()to guide you how to do things in MongoDB.
10.1 help - All available commands.
> help db.help() help on db methods db.mycoll.help() help on collection methods rs.help() help on replica set methods help admin administrative help help connect connecting to a db help help keys key shortcuts //...
10.2 db.help()
- Shows help on db.
> db.help() DB methods: db.addUser(username, password[, readOnly=false]) db.auth(username, password) db.cloneDatabase(fromhost) db.commandHelp(name) returns the help for the command db.copyDatabase(fromdb, todb, fromhost) //...
10.3 db.collection.help()
- Shows help on collection (table).
> db.users.help() DBCollection help db.users.find().help() - show DBCursor help db.users.count() db.users.dataSize() db.users.distinct( key ) - eg. db.users.distinct( 'x' ) db.users.drop() drop the collection db.users.dropIndex(name) //...
10.4 db.collection.function.help()
- Shows help on function.
> db.users.find().help() find() modifiers .sort( {...} ) .limit( n ) .skip( n ) .count() - total # of objects matching query, ignores skip,limit .size() - total # of objects cursor would return, honors skip,limit .explain([verbose]) //...
相关文章推荐
- mongodb mapreduce应该注意的两个地方
- MongoDB 3.0 用户创建
- Mongodb之JavaApi调用例子
- 简单的给mongodb添加用户和认证
- mongodb连接
- MongoDB安装命令(wiredTiger引擎)
- ubuntu 安装 Mongodb
- Spring Batch Example – XML File To MongoDB Database(五)
- MongoDB集群怎样去访问?
- 【MongoDB初识】-条件操作符
- Mongodb3.0 UserManager
- mongodb的简单使用二(结合springdata实现增删改查)
- MongoDB副本集故障测试和解决方案
- MongoDB YAML格式的配置文件
- 【mongoDB中级篇①】游标cursor
- mongodb的简单使用一(环境搭建)
- mongodb授权和权限
- JAVA--将MongoDB数据写出到CSV
- MongoDB---windows安装
- Mongodb