如何在 OpenLDAP 中存储实数/浮点数?

如何在 OpenLDAP 中存储实数/浮点数?

OpenLDAP 中如何存储浮点数/实数?我从未见过这样的数据类型。我知道你可以存储浮点数的字符串表示形式,但这听起来像可怕实践。

答案1

您可以将任意数据推送到 OpenLDAP 服务器,但它可能会在此过程中进行 base64 编码和解码,就像发送电子邮件附件一样。

匹配和排序规则可能会变得复杂。


最有可能的候选人是OctetString

EQUALITY octetStringMatch ORDERING octetStringOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.40

您应该能够使用它来存储任意数据。(您可能不想包含排序,因为它不太可能达到预期的效果。)

您可以考虑通过在语法 OID 末尾添加字节限制来限制位数。例如1.3.6.1.4.1.1466.115.121.1.40{8}

答案2

LDAP 将所有数字存储为字符串,但您可以在模式中配置匹配规则,将它们视为实际数字以进行排序。

相关内容