我正在使用rails 3和Mysql或SQlite3作为我的后端数据库。我从第三方导入了很多逗号分隔值。当某个特定属性为null时,第三方使用“”(该值为1个空格或空格)。
我的问题是从数据库效率的角度来看,我应该简单地坚持使用空格的第三方约定,还是我会更好地将空格转换为空字符。
答案 0 :(得分:2)
您应该使用NULL
,因为这意味着该字段没有值。但是一个空的空间实际上是一个值(这是一个空格),所以你最好将它们转换为NULL
。
答案 1 :(得分:1)
您应该将它们转换为NULL。如果数据为NULL,那么当它应该为NULL而不是一些随机空格时,它会使你的furute更容易工作。 事实是,您可以将其转换为任何内容,但如果您想要一个无bug系统,那么保持数据尽可能一致是最重要的事情之一。
答案 2 :(得分:1)
虽然NULL优于空白,但多个NULL数据表示数据库设计气味。
我建议你: