簡體   English   中英

在BoltDB中使用兩個單獨的鍵

[英]using two separate keys in BoltDB

我有一個具有IDLoginName字段的User結構,並且我希望通過一次調用DB即可通過這些字段之一訪問此結構。 我知道BoltDB不應處理任意字段索引等(與SQL不同),但是這種情況有些不同,因為我碰巧事先知道將b用作索引的附加字段。

那么,是否存在某種輔助鍵或多鍵索引? 還是我看不到的一些策略? 如果沒有,那么我將通過兩個調用來實現它,我只是更喜歡“更清潔”的解決方案...

謝謝!

BoltDB中沒有輔助鍵索引,但是您可以實現它。

您可以將ID到LoginName映射存儲在另一個存儲桶中,從技術上講,它將是您的結構的“輔助密鑰”。 即,首先從輔助鍵中獲取主鍵值,然后從User結構中獲取。

如果您的大多數呼叫都使用LoginName鍵,則使用LoginName進行ID映射,並將User struct存儲在LoginName鍵下,反之亦然。

注意:您必須自己保持一致性,請記住這一點。

不,不在那里。 BoltDB非常類似於Go。 干凈簡單。 並且在頂部構建層很容易。 BoltDB甚至允許瑣碎地實現更新事務,因此可以自動地(也可以不是)自動更新兩個以上的存儲桶。 因此,創建一個使兩個或多個存儲桶保持同步的更新事務很容易。 但這聽起來像您知道的,只是想檢查一下您是否缺少任何東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM