User
테이블에 부울 필드가있는 응용 프로그램이 있다고 가정 해 봅시다 Inactive
.
false를 null로 저장하면 본질적으로 잘못된 것이 있습니까? 그렇다면 단점이 무엇인지 설명해 주시겠습니까? 몇 달 전에 누군가 와이 문제를 논의했으며 앱 / 데이터베이스 전체에서 일관되게 수행하는 한 중요하지 않다는 데 동의했습니다. 최근에 내가 아는 사람은 "참" true
이거나 false
사용되어야한다고 강조 했지만 실제로 그 이유에 대해 설명하지는 않았습니다.
SELECT * FROM foo WHERE bar = FALSE
기대하는 결과를주지 않습니다.
Null is a special marker used in Structured Query Language (SQL) to indicate that a data value does not exist in the database
이것이 받아 들여지는 지혜이며 응용 프로그램에서 Null의 의미를 재정의해서는 안됩니다. 코드를 다루는 다른 모든 사람들에게 혼란을 줄 것입니다.