欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP庫 查詢Mongodb中的文檔ID的方法

 更新時間:2016年10月10日 09:02:35   投稿:lqh  
這篇文章主要介紹了PHP庫 查詢Mongodb中的文檔ID的方法的相關資料,需要的朋友可以參考下

在IBM我的一份新工作是一名開發(fā)的后勤人員。那意味著我的大部分時間是在和數據庫打交道。在我的工作流程中,我花了一些時間在MongoDB上面——這是一個文檔數據庫。但是在通過ID來檢索記錄這個操作上面我碰到了一些問題。下面的代碼是最終版本,以后碰到類似的問題我可以直接引用它。如果大家也需要,希望下面對大家有所幫助。

MongoDB 和 IDs

當我向一個集合中插入數據的時候,我并沒有設置_id字段;如果這個字段是空的話,那么MongoDB將要自動生成一個ID來使用,這對我來說是非常不錯的。然而,當我使用MongoDB生成的標識符的時候,這樣就會出現(xiàn)問題。

如果我使用db.posts.find()來檢索我的數據(我的集合被稱為posts),那么數據開起來如下所示:

{ "_id" : ObjectId("575038831661d710f04111c1"), ...

因此,如果我想用ID來檢索數據的話,我還需要包含ObjectId方法來訪問ID。

使用PHP庫

當我使用PHP來做這個事情的時候,我在使用這個新的PHP類庫的時并沒有找到一個合適的例子(但是,這個類庫確實是一個非常不錯的庫)。在以前的版本中,這個庫使用一個叫做MongoID的類來實現(xiàn)。但是我知道這并不是我想要的——但是我確實可以通過這個類來檢查文檔。因此如果你僅僅能找到以前代碼中的例子,那了解這個方法還是很有用的。
通過用這個PHP庫將一個ID傳給MongoDB,你需要構造一個MongoDB\BSON\ObjectID實例。下面的例子就是通過文檔的Id來檢索博客中的文檔。

$post = $posts->findOne(["_id" => new MongoDB\BSON\ObjectID($id)]);

然后,我將要更新這條記錄——這個博客帖子在這條記錄中還包含有嵌入的評論,因此向得到_id的這條記錄中的評論集合中添加一個數組,

$result = $posts->updateOne(
   ["_id" => new MongoDB\BSON\ObjectID($id)],
   ['$push' => [
"comments" => $new_comment_data
      ]
]);

最后希望本文對大家有所幫助。謝謝大家對本站的支持!

相關文章

  • MongoDB添加仲裁節(jié)點報錯:replica set IDs do not match的解決方法

    MongoDB添加仲裁節(jié)點報錯:replica set IDs do not match的解決方法

    這篇文章主要給大家介紹了關于MongoDB添加仲裁節(jié)點報錯:replica set IDs do not match的解決方法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧
    2018-11-11
  • MongoDB 常用的crud操作語句

    MongoDB 常用的crud操作語句

    本篇介紹了 MongoDB 的基本 CRUD 操作,可以看到 MongoDB 的語法極其簡潔,而且可以使用鏈式調用的方式進行操作。操作的參數也很固定,且方法名稱很明確,上手來說是很容易的
    2021-06-06
  • mongoDB數據庫索引快速入門指南

    mongoDB數據庫索引快速入門指南

    索引是一種特殊的數據結構,存儲設置在一個易于遍歷形式的數據的一小部分。索引存儲一個特定的字段或一組字段的值,在索引中指定的值的字段排列的,對mongoDB索引相關知識感興趣的朋友跟隨小編一起學習下吧
    2022-03-03
  • 詳解MongoDB中用sharding將副本集分配至服務器集群的方法

    詳解MongoDB中用sharding將副本集分配至服務器集群的方法

    副本集是MongoDB的主從復制中的重要功能,經常被用來作額外的備份,這里我們就來詳解MongoDB中用sharding將副本集分配至服務器集群的方法,首先還是來回顧一下MongoDB中副本集的基本知識:
    2016-07-07
  • MongoDB使用profile分析慢查詢的步驟

    MongoDB使用profile分析慢查詢的步驟

    這篇文章主要介紹了MongoDB profile分析慢查詢的示例,幫助大家更好的理解和學習使用MongoDB數據庫,感興趣的朋友可以了解下
    2021-04-04
  • mongodb中使用distinct去重的簡單方法

    mongodb中使用distinct去重的簡單方法

    怎么在mongodb中實現(xiàn)類似于SQL中distinct的功能,查詢某一個字段所有的值,今天我們就來探討下這個問題。
    2015-05-05
  • Windows安裝壓縮版MongoDB的教程

    Windows安裝壓縮版MongoDB的教程

    MongoDB 是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。這篇文章主要介紹了Windows安裝壓縮版MongoDB的教程,需要的朋友可以參考下
    2019-12-12
  • 基于MongoDB數據庫的數據類型和$type操作符詳解

    基于MongoDB數據庫的數據類型和$type操作符詳解

    下面小編就為大家?guī)硪黄贛ongoDB數據庫的數據類型和$type操作符詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • mongoDB使用投影剔除‘額外’字段的操作過程

    mongoDB使用投影剔除‘額外’字段的操作過程

    這篇文章主要給大家介紹了關于mongoDB使用投影剔除‘額外’字段的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • 詳解linux 使用docker安裝mongodb方法

    詳解linux 使用docker安裝mongodb方法

    這篇文章主要介紹了linux 使用docker安裝mongodb方法,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11

最新評論