gpt4 book ai didi

database - 在 GDBM 中存储任何哈希,我可以在其中搜索吗?

转载 作者:搜寻专家 更新时间:2023-10-30 22:12:37 25 4
gpt4 key购买 nike

this book 中阅读有关 GDBM 的信息|他们只给出了可以存储的数据结构的简单示例。例如

$dbm{'key'} = "value";

背景

我想在数据库中保存许多小文本文件,仅供本地使用,并使用嵌套的哈希和数组来表示文件路径。它不一定是 GDBM,但它似乎是 Perl 的唯一键/值数据库库。

问题

我可以在 GDBM 中存储任何哈希,无论它包含许多嵌套哈希和数组吗?

GDBM 是否提供任何搜索功能,或者我需要用 Perl 实现自己的搜索功能?

最佳答案

DBM 数据库根本不支持数组。它们本质上与 Perl 散列相同,只是项目的值只能是一个简单的字符串,不能是数字或引用。 DBM 数据库中每个数据项的键和值都是简单的字节序列。也就是说,API 通过 char 指针和 int 大小来表示它们。

在该约束下,您可以随心所欲地使用数据库,但请记住,与 SQL 数据库不同,每个键都必须是唯一的。

您可以通过将一次访问获取的数据用作下一次访问的键来模拟嵌套哈希,但是请记住对唯一键的要求,这远非理想。

或者,获取的值可以是您可以继续进一步查询的另一个 DBM 数据库的名称。

最后一个选项是将所有键连接成一个值,这样

$dbm{aa}{bb}{cc}

实际上会像这样实现

$dbm{aa_bb_cc}

关于database - 在 GDBM 中存储任何哈希,我可以在其中搜索吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22500507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com