【发布时间】:2013-11-30 00:42:07
【问题描述】:
因为 PostgreSQL 中没有 set 类型,所以我不得不使用 domain。我已经命名了一个域性别。它是文本类型。然后在用户表中,我创建了一个具有该性别类型的列。现在,如何将性别存储在 users 表中?作为文本还是二进制?
【问题讨论】:
-
有enumerated types,听起来这就是你要找的。您的域是什么样的?
-
@muistooshort,起初它有
male和female,但现在它还包括not applicable。enum是否允许同时存储male和female,如果允许,那么它可能不太合适。我可能会坚持ISO/IEC 5218。 -
拥有一个单独的跨性别价值观不是更有意义,而不是试图声称某人同时是男性和女性吗?如果您需要单个值提供的更多灵活性,则可以使用数组和其他非域自定义类型。也许您需要稍微充实一下您的问题,以便我们确切地知道您要做什么。
-
在几乎所有情况下,最好使用适当的 1:n 关系而不是枚举
标签: postgresql sql-domain