MongoDB CRUD之C
阿新 • • 發佈:2018-02-17
writer shell nim tco ali ora 多條 多個 mes
數據庫操作
命令 | 操作 |
---|---|
db |
查看當前數據庫 |
show dbs |
查看當前端口有多少數據庫 |
use db_name |
切換數據庫,沒有數據庫時自動創建 |
db.dropDatabase() |
刪除數據庫 |
其他的命令可以使用db.help()
或者官網查看
集合操作
命令 | 操作 |
---|---|
db.collection_name.insert(doc) |
會在插入文檔時自動創建集合 |
db.collection_name.drop() |
刪除集合 |
show collections |
顯示當前數據庫中的集合 |
其他的命令可以使用db.mycoll.help()
查看或者官網查看
文檔插入
命令 | 操作 |
---|---|
db.createCollection(name, {size: ., capped: ., max: .} ) |
創建指定數據庫 |
db.collection.insertOne() |
將單個文檔插入到集合中。 |
db.collection.insert() |
將單個文檔或多個文檔插入到集合中。 |
db.collection.insertMany() |
將多個文檔插入到一個集合中。 |
Create
數據庫
創建或者切換數據庫
$ mongo 1 > use company switched to db company 2 > db company 3 >
查看當前或者所有數據庫
2 > db company 3 > show dbs admin 0.000GB local 0.000GB test 0.000GB 4 >
註因為當前數據庫中沒有數據,所以查看不到
刪除數據庫
4 > db company 5 > db.dropDatabase() { "ok" : 1 } 6 > db company 7 >
刪除完當前數據庫後,很奇怪的是當前數據庫仍然是company
集合
插入文檔並自動創建集合
11 > db.unicorns.insert({ ... name: 'Aurora', ... gender: 'f', ... weight: 450 ... }) WriteResult({ "nInserted" : 1 })
插入文檔後由於有了數據,所以查看得到了數據庫
12 > show dbs admin 0.000GB company 0.000GB local 0.000GB test 0.000GB
顯示當前數據庫中的集合
13 > show collections unicorns
列表顯示集合名字
14 > db.getCollectionNames() [ "unicorns" ]
刪除集合
15 > db.unicorns.drop() true 16 > show collections 17 > db.getCollectionNames() [ ] 18 >
文檔
插入一條數據
18 > db.unicorns.insert({ ... name : 'Aurora', ... gender : 'f', ... weight : 450 ... }) WriteResult({ "nInserted" : 1 })
插入多條數據
插入數據太多,使用js文檔
db.unicorns.insertMany([ { name: 'Horny', dob: new Date(1992,2,13,7,47), loves: ['carrot','papaya'], weight: 600, gender: 'm', vampires: 63}, { name: 'Aurora', dob: new Date(1991, 0, 24, 13, 0), loves: ['carrot', 'grape'], weight: 450, gender: 'f', vampires: 43}, { name: 'Unicrom', dob: new Date(1973, 1, 9, 22, 10), loves: ['energon', 'redbull'], weight: 984, gender: 'm', vampires: 182}, { name: 'Roooooodles', dob: new Date(1979, 7, 18, 18, 44), loves: ['apple'], weight: 575, gender: 'm', vampires: 99}, { name: 'Solnara', dob: new Date(1985, 6, 4, 2, 1), loves:['apple', 'carrot', 'chocolate'], weight:550, gender:'f', vampires:80}, { name:'Ayna', dob: new Date(1998, 2, 7, 8, 30), loves: ['strawberry', 'lemon'], weight: 733, gender: 'f', vampires: 40}, { name:'Kenny', dob: new Date(1997, 6, 1, 10, 42), loves: ['grape', 'lemon'], weight: 690, gender: 'm', vampires: 39}, { name: 'Raleigh', dob: new Date(2005, 4, 3, 0, 57), loves: ['apple', 'sugar'], weight: 421, gender: 'm', vampires: 2}, { name: 'Leia', dob: new Date(2001, 9, 8, 14, 53), loves: ['apple', 'watermelon'], weight: 601, gender: 'f', vampires: 33}, { name: 'Pilot', dob: new Date(1997, 2, 1, 5, 3), loves: ['apple', 'watermelon'], weight: 650, gender: 'm', vampires: 54}, { name: 'Nimue', dob: new Date(1999, 11, 20, 16, 15), loves: ['grape', 'carrot'], weight: 540, gender: 'f'}, { name: 'Dunx', dob: new Date(1976, 6, 18, 18, 18), loves: ['grape', 'watermelon'], weight: 704, gender: 'm', vampires: 165} ])
Mongo shell使用load("insertM.js")
19 > load("insertM.js") true 20 > db.unicorns.find() { ..., "name" : "Aurora", "gender" : "f", "weight" : 450 } { ..., "name" : "Horny", "dob" : ISODate("1992-03-12T23:47:00Z"), ...} { ..., "name" : "Aurora", "dob" : ISODate("1991-01-24T05:00:00Z"), ... } ...... 21 > db.unicorns.count() 13
可以看到插入了13條數據
插入多條或者一條數據使用insert
- 插入一條時語法與insertOne一樣
- 插入多條時語法與insertMany一樣
循環插入多條數據
22 > for(i = 3; i < 100; i ++)db.set2test.insert({x:i}) WriteResult({ "nInserted" : 1 }) 23 > db.set2test.count() 97
可以看到使用了循環插入並創建集合
set2test
,插入完成後集合中有了97條數據?
MongoDB CRUD之C