91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)

發布時間:2020-08-10 12:02:26 來源:網絡 閱讀:587 作者:wanght89 欄目:編程語言

接著上篇博文,繼續學習Ruby操作Mongo數據庫,本博文介紹的是MongoDB的基本數據,即數據庫的CRUD操作(創建,查詢,更新,刪除)

1.創建一個集合,插入一個文檔

1.1如果是將單個文檔插入結果,使用insert_one方法;

選擇集合people,操作語句 collection=client[:people]

定義要插入的文檔數據和結構,操作語句 doc = { name:'Steve',hobbies:['hiking','tennis','Fly Fishing']}

執行result= collection.insert_one(doc)

執行 result.n,獲取插入條數,執行結果如下:

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)

1.2 如果是同時插入多個文檔,使用insert_many方法:

定義要插入的文檔數據,

docs = [ {name: 'Steve1', hobbies: [ 'hiking', 'tennis', 'fly fishing' ] },

        { name: 'Sally', hobbies: ['skiing', 'stamp collecting' ] } ]

執行result= collection.insert_many(docs)

執行result.insert_count查詢插入條數,執行結果如下:

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)


2. 集合查詢

使用find語句開啟查詢,若不添加任何的查詢過濾條件,將返回集合中的所有文檔

2.1 不適用任何查詢過濾條件

collection.find.each do |document|

2.2 使用查詢過濾條件

puts collection.find({name:'Sally'}).first,查詢出滿足條件的第一條記錄,執行結果如下:

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)


3. 更新文檔

更新單個文檔:update_one

更新多個文檔:update_many

兩個方法,第一個參數為查詢條件,查詢出要更新的文檔;第二個參數是更新數據,使用$set來增加或更新一個或多個特定的域;如果不使用$set,則將查詢到的整個文檔更新為設定的更新數據;

result = collection.update_one( { 'name' => 'Sally' }, { '$set' => { 'phone_number' => "555-555-5555" } } )

puts collection.find( { 'name' => 'Sally' } ).first

執行結果如下:

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)

若不使用$set,則將滿足條件的文檔全部替換為要更新的數據。

更新多行update_many

result = collection.update_many( {}, { '$set' => { 'age' => 36 } } )

puts result.modified_count

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)


4.刪除文檔

刪除單個文檔:delete_one

刪除多個文檔:delete_many

參數為查詢條件

刪除單條  result = collection.delete_one( name 'Steve' )

刪除多條   result = collection.delete_many({ name: /$S*/ }),刪除名字name屬性以S開始的文檔


5.最后,增加一個創建索引的操作

創建單個索引:create_one

創建多個索引:create_many

例:collection.indexes.create_one({ name: 1 }, unique: true)


例:collection.indexes.create_many([
   { key: { name: 1 } , unique: true },
   { key:  { hobbies: 1 } },
 ])

Ruby2.3.3操作MongoDB入門(Mongo驅動版本2.4.3)-數據庫CRUD(創建、查詢、更新、刪除)

執行指令后,index的數目發生了變化

至此,Ruby操作MongoDB的入門操作結束。兩篇博文主要講解了Ruby操作MongoDB數據庫的先期準備工作,如何創建數據庫連接,如何實現集合文檔的創建,查詢,更新和刪除。并介紹了如何給文檔創建索引,從而優化數據庫的查詢效率。




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

石家庄市| 博湖县| 黎川县| 郯城县| 蒙城县| 安顺市| 乐都县| 安岳县| 济阳县| 潜江市| 琼结县| 荔波县| 康平县| 扎兰屯市| 德州市| 元阳县| 家居| 邵阳市| 金川县| 郸城县| 玉屏| 阿合奇县| 嘉黎县| 乐平市| 亚东县| 敦化市| 四平市| 邯郸市| 丹阳市| 浮梁县| 漳平市| 合江县| 波密县| 松桃| 开封县| 平顶山市| 冷水江市| 浙江省| 安丘市| 正安县| 宜章县|