名称IsFemale是否适合数据库列?

boi*_*999 16 naming-conventions

只需浏览我们的数据库模式,找到一个名为'IsFemale'的字段

这个名字好,还是有点可笑?

JP *_*oto 44

如果可能的话,你应该坚持使用ISO标准.

ISO/IEC 5218 信息技术 - 代表人类性别的代码是一种国际标准,它通过语言中性的单位数代码定义人类性别的表征....

ISO/IEC 5218中规定的四个代码是:

  • 0 =未知,
  • 1 =男性,
  • 2 =女性,
  • 9 =不适用.

该标准规定其使用可由指定者"SEX"引用.

  • 我最喜欢的一句话:"该标准明确规定,男性编码为1,女性编码为2这一事实没有任何意义.编码仅反映了启动该标准的国家的现有做法." 因此在政治上无关紧要 (6认同)
  • 我不敢相信这有一个血腥的ISO标准! (6认同)
  • 所以他们不处理"Transgendered"和"Neuter"呢?我的同事们会很失望.或者在连接中丢失,一个或另一个. (4认同)

Joh*_*sch 27

女性和男性不是互相排斥的,所以你必须为变性人,男女皆宜等提出一些东西.

要使其尽可能企业化,请创建一个GenderTypeID列:

GenderTypes
-----------
GenderTypeID  Name     Greeting

      1       Male     Dear Sir
      2       Female   Dear Madam
      3       Unisex   Dear Sir and Madam
      4       Unknown  Dear Sir or Madam
      5       Android  Dear Artificial Life Form
Run Code Online (Sandbox Code Playgroud)

... 等等.


Vla*_*mir 6

也许命名列"性别"(char与'M','F')会让我更"敏感".

  • @John - 我的角色必须比你的大......我喜欢伸展并占据8位.;) (3认同)

var*_*tec 6

嗯,典型的事情就是拥有"性别"专栏,但你可能最终会遇到一些无能为力的客户,他们试图用"每周两次"的价值来提交它.

其他问题是它依赖于语言.例如,在英语中,M表示M an,而在西班牙语中,它可能表示M ujer(女性).


mar*_*c_s 1

您是否只需要检查“IsFemale”的真/假?

像“PersonType”这样的列或类似的列不是更合适吗?这样,您就可以拥有“女性”、“男性”、“公司”等等 - 更多可能的值。

马克

PS:但如果您选择使用“位”(布尔值)列,那么“Is”或“Has”前缀是一个不错的选择,在我看来 - 很清楚它是一个布尔值!