我有一個User帶有ID和LoginName字段的結構,我希望通過對數據庫的單次調用,這些字段中的任何一個都可以訪問該結構。我知道 BoltDB 不應該處理任意字段索引等(與 SQL 不同),但這種情況有點不同,因為我碰巧事先知道 b 的附加字段用作索引。那么是否有某種輔助鍵或多鍵索引?或者也許是我看不到的一些策略?如果沒有,那么我將通過兩次調用來實現它,我只是更喜歡“更清潔”的解決方案......謝謝!
2 回答

德瑪西亞99
TA貢獻1770條經驗 獲得超3個贊
不,它不在那里。BoltDB 很像 Go。干凈簡單。在上面構建一個層很容易。BoltDB 甚至允許簡單地實現更新事務,因此可以原子地更新或不更新另外兩個存儲桶。因此,創建一個保持兩個或更多存儲桶同步的更新事務很容易。但聽起來您知道這一點,只是想檢查一下您是否沒有遺漏任何東西。

jeck貓
TA貢獻1909條經驗 獲得超7個贊
BoltDB 中沒有輔助鍵索引,但您可以實現它。
您可以將 ID 存儲到另一個存儲桶中的 LoginName 映射,從技術上講,它將是您的結構的“輔助鍵”。即先從二級鍵中獲取主鍵值,再獲取User結構體。
如果您的大部分調用都在 LoginName 鍵上,請使用 LoginName 到 ID 映射并將 User 結構存儲在 LoginName 鍵下,反之亦然。
小心:你必須自己保持一致性,記住這一點。
- 2 回答
- 0 關注
- 166 瀏覽
添加回答
舉報
0/150
提交
取消