擅长:python、mysql、java
<p>通过设置duplicate标志,可以在berkeley数据库中针对单个密钥保存多个值</p>
<pre><code>filename = '/path/to/berkeley/db/file'
fruitDB = db.DB()
fruitDB.set_flags(db.DB_DUP)
fruitDB.open(filename, None, db.DB_BTREE, db.DB_CREATE)
fruitDB.put(str(1), "Waqar")
fruitDB.put(str(1), "Umer")
fruitDB.put(str(2), "x")
fruitDB.put(str(2), "y")
fruitDB.put(str(4), "z")
fruitDB.put(str(5), "e")
</code></pre>
<p>但是您不能使用BDB的“Get”方法检索所有这些项,您必须使用cursor检索项请参见<a href="http://pybsddb.sourceforge.net/bsddb3.html" rel="nofollow noreferrer">documentation</a>为此,或者可以使用</p>
^{pr2}$
<p>输出将是</p>
<pre><code>('1', 'Waqar')
('1', 'Umer')
</code></pre>
<p>这将返回所有值属于键“1”的元组列表
希望这有帮助。在</p>