Я спроектировал базу данных с пустым битовым столбцом для хранения положительных / отрицательных / непроверенных результатов теста с довольно очевидной корреляцией с 1/0 / ноль. Мне показалось, что это нормально, и я перевожу значения в приложении, и все хорошо.
Мой начальник вдруг решил, что это нехорошо, и мы должны использовать ФК. Я упомянул, что отказ от посторонних FK и таблиц является частью того, почему я пошел с этим, и он решил, что будет лучше использовать varchar
и хранить значение всего домена, потому что «по крайней мере это индексируется» и «пространство дешево».
Занимать больше места означает больше времени на передачу, если вы принимаете подобные решения повсюду, но, кроме того, есть ли разница в производительности между индексированным varchar
и обнуляемым bit
? Если бы это было так, я бы заподозрил, что обнуляемый бит будет быстрее, но я подозреваю, что у других здесь больше опыта, чем у меня.
Кто-нибудь весит на этом? Мой босс прав?
Если это имеет значение, программное обеспечение на C # проходит через службу данных WCF через EF для доступа к SQL Server.