mongo讀書筆記 一

2021-08-29 22:52:24 字數 1565 閱讀 8192

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 正面管教的魔法 好孩子不是用嘴巴教...