mongodb 是乙個基於分布式檔案儲存的資料庫,由 c++ 語言編寫,旨在為 web 應用提供可擴充套件的高效能資料儲存解決方案。
mongodb 是乙個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫的,在高負載的情況下,新增更多的節點,可以保證伺服器效能。
mongodb 將資料儲存為乙個文件,資料結構由鍵值(key=>value)對組成。
mongodb 文件類似於 json 物件,字段值可以包含其他文件,陣列及文件陣列。
d盤根目錄下建立乙個資料夾data,在data內部再建立乙個資料夾db
進入到mongodb的bin目錄,
按住shift,點選滑鼠的右鍵,開啟命令列視窗,輸入如下指令開啟資料庫連線池
mongod --dbpath d:\data\db
再在此目錄中,按住shift,點選滑鼠的右鍵,開啟命令列視窗,輸入如下指令開啟乙個連線資料庫的客戶端,不要關閉上乙個視窗
mongo
如果這樣不成功,說明是管理員許可權的問題,那就需要多走幾步路
以管理員身份執行命令列視窗開啟資料庫連線池
d:cd mongodb (注意你自己的資料夾的名稱)
cd mongodb-win32-x86_64-2008plus-ssl-4.0.9
cd bin
mongod --dbpath d:\data\db
以管理員身份執行命令列視窗開啟客戶端
d:cd mongodb (注意你自己的資料夾的名稱)
cd mongodb-win32-x86_64-2008plus-ssl-4.0.9
cd bin
mongo
2.2 資料庫常用命令
2.2.1 help檢視命令提示
helpdb.help()
db.test.help()
db.test.find().help()
2.2.2 建立切換資料庫--------無則建立並且切換,有則切換
db // testuse hupeng // switched to db hupeng
db // hupeng
2.3.3 查詢資料庫
show dbs
2.3.1 建立乙個聚集集合
db.createcollection(name, options)引數說明:
字段型別
描述布林(可選)
如果為 true,則建立固定集合。固定集合是指有著固定大小的集合,當達到最大值時,它會自動覆蓋最早的文件。當該值為 true 時,必須指定 size 引數。
autoindexid
布林(可選)
如為 true,自動在 _id 字段建立索引。預設為 false。
size
數值(可選)
max數值(可選)
指定固定集合中包含文件的最大數量。
2.3.2 得到指定名稱的聚集集合
> db.getcollection('users')
hupeng.users
3.1 增
db.collection.insertone(document) // 向指定集合中插入一條文件資料db.collection.insertmany(document) // 向指定集合中插入多條文件資料
> db.users.insertmany([,])
3.2 刪
> db.users.deleteone() //刪除一條,password為123的資料> db.users.find().pretty() //查詢資料庫的資料
> db.users.deletemany({}) //刪除多條
> db.users.find().pretty()
3.3 改
db.col.updateone(, }) //修改第一條key為value的資料db.col.updatemany(, }) //修改多條key為value的資料
db.col.updateone(, }) //修改某一條資料的某乙個欄位key的自增自減num(num為正->加,num為負->減)
3.4 查
> db.users.find().pretty() // 查詢所有的資料,顯示所有的字段> db.users.find({},).pretty() // 不顯示_id欄位
>db.users.find({},).pretty() // 不顯示_id欄位,顯示username欄位'和age欄位,0為不顯示,1為顯示
>db.users.find(,).pretty() //顯示username為張三的資料
>db.users.find(}, ).pretty()
// 大於:$gt 大於等於:$gte 小於:$lt 小於等於:$lte
>db.users.find({}, ).sort().pretty()//按照年齡排序 .sort() num為1表示按照key值公升序,為-1表示降序
模糊查詢:
>db.users.find(, ).pretty() // 精確查詢,沒有資料 沒有username為 「四」 的
>db.users.find(, ).pretty()//找username中含有 「四」 的資料
>db.users.find(, ]}, ).pretty()//查詢名字中含有三或者 含有四的 * $or
> .distinct('city') //查詢所以資料的city欄位組成陣列,並且去重
> .count() //查詢的條數
> .toarray() //轉換成陣列
> .limit(num) //只能查詢num條資料
> .skip(n) //從第n條開始查,下標從0開始
const sql = )
// promise的寫法
// return new promise((resolve, reject) => )
return new promise((resolve, reject) => )
})},
delete (collectionname, deletedata, deletetype) )
// user.deletemany(deletedata, (err) => {})
// style.display = "none" <===> style['display'] = "none"
// style.animation = "test" 相容性
// 物件後的屬性不可以是變數,如果有變數,寫成 物件[屬性] 形式
deletetype = deletetype || 'deleteone' // 預設為刪除單條資料
return new promise((resolve, reject) => )
})},
update (collectionname, whereobj, updateobj, updatetype) )
})},
find (collectionname, whereobj, showobj) )})}
}module.exports = sql
Mongodb資料庫使用
show dbs use 資料庫名字 如果想新建資料庫,也是use。use乙個不存在的,就是新建 插入一條資料,才算新建成功 dbdb.student.insert student就是所謂的集合。集合中儲存著很多json。student是第一次使用,集合將自動建立。如果建立的json是用於作為資料庫...
Mongodb資料庫使用
show dbs use 資料庫名字 如果想新建資料庫,也是use。use乙個不存在的,就是新建 插入一條資料,才算新建成功 dbdb.student.insert student就是所謂的集合。集合中儲存著很多json。student是第一次使用,集合將自動建立。如果建立的json是用於作為資料庫...
mongodb資料庫的基本使用
mongo使用其實很簡單 在寫如mongo資料庫前先要後台執行mongo 如下圖 2.引入from pymongo import mongoclient 3.建立mongodb物件 db mongoclient host 127.0.0.1 port 27017 注host填本機位址 4.獲取資料庫...