ongoDB(06) 文件操作

2022-10-11 04:54:07 字數 3036 閱讀 6656

原文:

文件的資料結構和 json 基本一樣。

所有儲存在集合中的資料都是bson 格式。bson 是一種類似 json 的二進位制形式的儲存格式,是 binary json 的簡稱。

1、db.collection.insert(): 向集合中插入文件,若插入的資料主鍵已經存在,則會拋org.springframework.dao.duplicatekeyexception異常,提示主鍵重複,不儲存當前資料。

db.collection.insert(document)

2、db.collection.insertone(): 用於向集合插入乙個新文件,語法格式如下:

db.collection.insertone(

,)

3、db.collection.insertmany(): 用於向集合插入乙個多個文件,語法格式如下:

db.collection.insertmany(

[ , , ... ],

)

引數說明:

以下文件可以儲存runoob 資料庫 的 col 集合中:

>db.col.insert()
以上例項中 col 是我們的集合名,如果該集合不在該資料庫中, mongodb 會自動建立該集合並插入文件。

我們也可以將資料定義為乙個變數,如下所示:

> document=();
執行插入操作:

> db.col.insert(document)

writeresult()

>

插入文件你也可以使用 db.col.s**e(document) 命令。如果不指定 _id 字段 s**e() 方法類似於 insert() 方法。如果指定 _id 字段,則會更新該 _id 的資料。

update()s**e()方法來更新集合中的文件。接下來讓我們詳細來看下兩個函式的應用及其區別。

update() 方法用於更新已存在的文件。語法格式如下:

db.collection.update(,,

)

引數說明:

接著我們通過 update() 方法來更新標題(title):

>db.col.update(,})

writeresult() # 輸出資訊

> db.col.find().pretty()

>

可以看到標題(title)由原來的 "mongodb 教程" 更新為了 "mongodb"。

以上語句只會修改第一條發現的文件,如果你要修改多條相同的文件,則需要設定 multi 引數為 true。

>db.col.update(,},)
s**e() 方法通過傳入的文件來替換已有文件,_id 主鍵存在就更新,不存在就插入。語法格式如下:

db.collection.s**e(

,)

引數說明:

以下例項中我們替換了 _id 為 56064f89ade2f21f36b03136 的文件資料:

>db.col.s**e()
只更新第一條記錄:

db.col.update( } , } );

全部更新:

db.col.update( } , },false,true );

只新增第一條:

db.col.update( } , },true,false );

全部新增進去:

db.col.update( } , },true,true );

全部更新:

db.col.update( } , },false,true );

只更新第一條記錄:

db.col.update( } , },false,false );

mongodb remove()函式是用來移除集合中的資料。在執行remove()函式前先執行find()命令來判斷執行的條件是否正確,這是乙個比較好的習慣。

remove() 方法的基本語法格式如下所示:

db.collection.remove(

,)

如果你的 mongodb 是 2.6 版本以後的,語法格式如下:

db.collection.remove(

,)

引數說明:

接下來我們移除 title 為 'mongodb 教程' 的文件:

>db.col.remove()

writeresult() # 刪除了兩條資料

>db.col.find()

…… # 沒有資料

如果你只想刪除第一條找到的記錄可以設定 justone 為 1,如下所示:

>db.collection_name.remove(,1)
如果你想刪除所有資料,可以使用以下方式(類似常規 sql 的 truncate 命令):

>db.col.remove({})

>db.col.find()

10 文件常用操作 2019 05 19

1.插入文件 注 elasticsearch不需要在文件插入索引之前先顯式建立索引。如果索引事先尚未存在,則elasticsearch將自動建立索引,還會自動建立動態對映。1 插入文件時指定id put twitter doc 1 2 插入文件時自動生成id 如果不指定id,elasticsearc...

ElasticSearch 05 文件操作

文件,即索引庫中某個型別下的資料,會根據規則建立索引,將來用來搜尋。可以模擬做資料庫中的每一行資料。通過post請求,可以向乙個已經存在的索引庫中新增文件資料。語法post 索引庫名 型別名 示例 post test goods 響應 可以看到結果顯示為 created,應該是建立成功了。另外,需要...

html 06 文件型別 字符集

在sublime中自動補全後出現如下圖所示 框架 l1的 doctype html 說明文件是html5版本。如果在最開始自動補全時輸入的是html xt,自動補全後就是html4版本。現在一般用html5.l4的 charset 是字符集的意思,常見的字符集如下 utf 8是目前最常用的字符集編碼...