show dbs 顯示所有庫
use db_name 切換到db_name庫
show collections 顯示當前庫的所有文件集合
db.user_table.insert() 插入文件,會自動生成乙個objectid
db.user_table.insert([,,]) 批量插入多個文件
> db.user_table.remove( )
writeresult()
//條件刪除,如果不加條件,預設刪除裡面的所有文件,但是集合本身不被刪除,裡面的元資訊也不會被刪除
drop的刪除速度比remove快,但是集合和元資訊也會都被刪除,drop的條件刪除會把所有文件都刪除?
> db.user_table.drop( )
true //執行完這個後所有資料都沒了,但是集合資訊還在?慎用 drop
> db.user_table.update(,})
writeresult()
$set 也可以 修改鍵的型別
> db.user_table.update(,}) //現在型別變成了array型別
$unset 用來刪除乙個字段
> db.user_table.update(,})
writeresult()
還支援修改內嵌文件
> db.user_table.update(,})
writeresult()
增加、修改或刪除鍵時,應該使用$修改器,如果用下面的做法就會將整個文件替換為你更新的內容
> db.user_table.update(,)
writeresult()//會將整個文件替換成age:40
$inc 修改器用來增加已有鍵的值,或者該鍵不存在那就建立乙個。對於更新分析資料、因果關係、投票或者其他有變化數值的地方 ,使用這個都會非常方便。
db.table_name.update(,...})
將pageviews原子操作+1
如果陣列已經存在,會向已有的陣列末尾加入乙個元素,要是沒有就建立乙個新陣列
> db.user_table.update(,}})
writeresult()
$push 與 $each 搭配可以一次新增多個值
> db.user_table.update(,}})
writeresult()
如果希望陣列的最大長度是固定的,可以將$slice 與 $push組合在一起使用
對應的有$pop
其餘的還有$ne, $addtoset,$定位符,
有的修改器執行比較快 ,$inc就能就地修改,因為不需要改變文件大小。 這是因為將文件插入到mongo中時,依次 插入的文件在磁碟上的位置是相鄰的。因此,如果乙個文件變大了,原先的位置就放不下了,就會重新開闢記憶體移到新開闢的記憶體中去。
填充因子:是mongo為每個文件預留的空間(類似於go中的cap容量)
1.最初文件之間沒有多餘的空間
2.當乙個文件超過空間大小時,就釋放掉原先的空間,開闢新的空間,填充因子就會變大
3.之後插入的文件都會擁有填充因子指定大小的增長空間,如果再之後的插入中不再傳送文件移動,填充因子會逐漸變小
Mongo讀書筆記1 GridFS
乙個mongo文件最大4m.gridfs不依賴於mongodb,其他符合規範的驅動都可以訪問它。gridfs包含兩部分 一部分儲存檔名和其他metadata 另一部分儲存實際的檔案,通常分成乙個個大小為256k的小塊。mongofiles工具 列出mongofiles.mongofiles list...
讀書筆記一
一物件導向 一 類 1 屬性 為物件儲存資料 公共屬性public 不帶關鍵字 預設public 私有屬性private 受保護屬性protected 訪問類shopproduct中的title屬性 mo del news hopp rodu ct title model title 2.方法 為物...
讀書筆記 一
今年的年度目標之一是讀書50本,已完成八本 1 親密關係 親密關係有很多種,夫妻 婆媳 親子 朋友 閨蜜等等,都是親密關係的範疇,親密關係出現問題多受嬰兒時期與父母關係的影響,親密關係出現問題要懂得內省,誠實的認清自己,並看見別人真實的存在,出於愛的目的去發聲。2 正面管教的魔法 好孩子不是用嘴巴教...