您好,登錄后才能下訂單哦!
這篇文章主要講解了“MongoDB常用的基本操作命令”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“MongoDB常用的基本操作命令”吧!
在MongoDB數據庫里面是存在有數據庫的概念的,但是沒有模式(所有的信息都是按照文檔保存的),文檔的結構就是JSON結構,只不過在進行一些數據處理的時候才會使用到MongoDB自己的一些操作符。
1、切換到stone數據庫:
> db
test
執行 "db" 命令可以顯示當前數據庫對象
> use stone
switched to db stone
> show databases;
admin 0.000GB
local 0.000GB
實際上這個時候并不會創建數據庫,只有在數據庫里面保存集合數據之后才能夠真正創建數據庫。
● admin: 從權限的角度來看,這是"root"數據庫。要是將一個用戶添加到這個數據庫,這個用戶自動繼承所有數據庫的權限。一些特定的服務器端命令也只能從這個數據庫運行,比如列出所有的數據庫或者關閉服務器。
● local: 這個數據永遠不會被復制,可以用來存儲限于本地單臺服務器的任意集合
● config: 當Mongo用于分片設置時,config數據庫在內部使用,用于保存分片的相關信息。
2、創建一個集合:
> db.createCollection("emp");
{ "ok" : 1 }
> show databases;
admin 0.000GB
local 0.000GB
stone 0.000GB
這個時候stone數據庫才會真正存在。
3、但是很多時候如果按照以上的代碼形式進行會覺得你不正常,因為正常人使用MongoDB數據庫集合操作的時候都是直接向里面保存一個數據。
> db.dept.insert({"deptno":10,"dname":"財務部","loc":"北京"})
WriteResult({ "nInserted" : 1 })
4、查看所有集合
> show collections;
dept
emp
發現dept集合自動創建。
5、查看emp表的數據
語法:db.集合名稱.find({若干條件})
> db.dept.find();
{ "_id" : ObjectId("59904d44d31a95e93db0da1c"), "deptno" : 10, "dname" : "財務部", "loc" : "北京" }
從傳統的數據表來看(集合就相當于表的結構),表的結構一旦定義就必須按照其定義的要求進行內容的編寫。但是MongoDB不一樣,它可以自己隨意擴充數據。
6、增加不規則的數據
> var deptData={
... "deptno":20,
... "dname":"研發部",
... "loc":"深圳",
... "count":20,
... "avg":8000
... };
> db.dept.insert(deptData);
WriteResult({ "nInserted" : 1 })
> db.dept.find()
{ "_id" : ObjectId("59904d44d31a95e93db0da1c"), "deptno" : 10, "dname" : "財務部", "loc" : "北京" }
{ "_id" : ObjectId("59904f2dd31a95e93db0da1d"), "deptno" : 20, "dname" : "研發部", "loc" : "深圳", "count" : 20, "avg" : 8000 }
此時dept集合的內容可以由用戶隨便定義,完全不用考慮其他的結構,那么實際上就必須明確一點了,在MongoDB數據庫之中是絕對不可能存在有查看集合結構的操作。
7、關于ID的問題
在MongoDB集合在的每一行記錄都會自動的生成一個:“"_id" : ObjectId("59904f2dd31a95e93db0da1d")”數據,這個數據組成:“時間戳 + 機器碼 + 進程PID + 計數器”,這個ID的信息是MongoDB數據庫自己為用戶生成的。
8、查看單獨的一個文檔信息
> db.dept.findOne()
{
"_id" : ObjectId("59904d44d31a95e93db0da1c"),
"deptno" : 10,
"dname" : "財務部",
"loc" : "北京"
}
9、刪除數據
> db.dept.remove({"_id" : ObjectId("59904d44d31a95e93db0da1c")});
WriteResult({ "nRemoved" : 1 })
> db.dept.find();
{ "_id" : ObjectId("59904f2dd31a95e93db0da1d"), "deptno" : 20, "dname" : "研發部", "loc" : "深圳", "count" : 20, "avg" : 8000 }
10、更新數據
> var deptData={
... "deptno":30,
... "dname":"IT",
... "loc":"北京"
... };
> db.dept.update({"_id" : ObjectId("59904f2dd31a95e93db0da1d")},deptData);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.dept.find();
{ "_id" : ObjectId("59904f2dd31a95e93db0da1d"), "deptno" : 30, "dname" : "IT", "loc" : "北京" }
11、刪除集合
語法:db.集合名稱.drop();
> db.dept.drop();
true
> show collections;
emp
12、刪除數據庫(刪除當前所在的數據庫)
> db.dropDatabase();
{ "dropped" : "stone", "ok" : 1 }
> show dbs;
admin 0.000GB
local 0.000GB
刪除數據庫是刪除當前所在的數據庫,必須先切換到數據庫后才可以刪除。
感謝各位的閱讀,以上就是“MongoDB常用的基本操作命令”的內容了,經過本文的學習后,相信大家對MongoDB常用的基本操作命令這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。