NULL - это ненулевое значение, которое следует отнести к темным векам, откуда оно возникло. Я обнаружил, что есть нетривиальный объем программирования, необходимый для обработки особых случаев NULL, которые можно легко обработать с помощью значения по умолчанию.
Установите для столбца по умолчанию пустую строку.
Заставьте столбец запретить пустое значение, что, скорее всего, никогда не произойдет, если вы назначите значение по умолчанию.
Пишите свой код блаженно, игнорируя случай, когда значение столбца равно нулю.
Одна огромная проблема, с которой я всегда сталкивался с NULL, заключается в том, что «SELECT * from tbl WHERE column = NULL» всегда будет возвращать пустой набор результатов. NULL никогда не может быть равен чему-либо, включая NULL. Специальное ключевое слово «столбец является нулевым» - единственный способ проверить, является ли что-то нулевым. Если вы отступите от нуля, тогда сравнение будет успешным: "column = ''" 7 строк возвращено.
Я сделал две основные реализации БД с нуля, где, в конце концов, я пожалел, что использовал NULL. В следующий раз для меня нет NULL!