python - 在 python 中表达 berkeley db 中的多个列?

标签 python berkeley-db bsddb okvs

假设我有一个包含用户名、名字和姓氏的简单表。

我如何在 berkeley Db 中表达它?

我目前使用 bsddb 作为界面。

干杯。

最佳答案

您必须选择一个“列”作为键(必须是唯一的;我想在您的情况下这将是“用户名”)——唯一可能进行搜索的方法。其他列可以通过您喜欢的任何方式成为该键的单个字符串值,从酸洗到简单连接保证永远不会出现在任何列中的字符,例如'\0'用于许多类型“可读文本字符串”。

如果您需要能够通过不同的键进行搜索,您将需要将其他、补充和单独的 bsddb 数据库设置为主表中的“索引”——这需要大量工作,并且有很多关于该主题的文献. (或者,您转向更高抽象的技术,例如 sqlite,它会代表您巧妙地处理索引;-)。

关于python - 在 python 中表达 berkeley db 中的多个列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2399643/

相关文章:

c++ - 如何从 C++ 中列出 BDB 中的键/值

python - 在非 BSD 系统上用 Python 打开 Berkeley DB 版本 1.85

python - 无法在 api.ai 中读取非常大的数字作为参数

c++ - Big Endian 字节与字符串作为字符串中的键 - 字符串数据库

python - 与 Project Euler : C vs Python vs Erlang vs Haskell 的速度比较

java - 我已经安装了 Berkeley DB 5.1.25.msi Windows 安装程序

python - bsddb.open 附加参数

python - 如何使用 bsddb3 将(长)整数值写入 Berkeley DB?

python - 在使用groupby和transform进行计算时,如何仅在第一次出现时获得聚合结果,而在其他情况下获得0?

python - 如何使用整个单词作为键在 python 中进行翻译