Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Объясните разницу между NULL и просто пустой ячейкой
 
 автор: amsun   (21.03.2006 в 19:44)   письмо автору
 
 

Такая ситуация. Проектирую таблицу в БД. Множество полей. Скрипт может записывать данные не во все поля. Так вот. Обязательно ли указывать, что поле может быть NULL для таких ячеек... ведь скрипт добавляет строку без ошибки даже если не добавляет ничего в ячейки, которые обозначены у меня как NOT NULL. На чем это потом скажется?

   
 
 автор: Trianon   (21.03.2006 в 19:48)   письмо автору
 
   для: amsun   (21.03.2006 в 19:44)
 

>Обязательно ли указывать, что поле может быть NULL для таких
>ячеек... ведь скрипт добавляет строку без ошибки даже если
>не добавляет ничего в ячейки, которые обозначены у меня как
>NOT NULL.
Значит для этих столбцов заданы значения по умолчанию в структуре таблицы.
Пустая строка - вполне определенное значение. NULL - неизвестное (незаданное) значение.

   
 
 автор: amsun   (21.03.2006 в 20:04)   письмо автору
 
   для: Trianon   (21.03.2006 в 19:48)
 

Для некоторых не указаны на самом деле. Есть столбцы, где указан только тип данных и сказано, что они должны быть NOT NULL. Но они бывают пустыми... че-то я запутался....

   
 
 автор: Trianon   (21.03.2006 в 20:08)   письмо автору
 
   для: amsun   (21.03.2006 в 20:04)
 

Если это строковые типы данных, то для них вполне допустима пустая строка. Пустая строка - вполне определенное значение. Это не NULL. Как минимум, если мы говорим про MySQL.

   
 
 автор: amsun   (21.03.2006 в 20:27)   письмо автору
 
   для: Trianon   (21.03.2006 в 20:08)
 

ок, это строки. осталось выяснить что удобнее? точнее зачем этот NULL нужен тогда? просто мне нужно решать, что выбрать: при составлении таблицы указывать, что столбец NOT NULL, а потом без последствий не записывать туда при желании данные или строго указать, что столбец может быть NULL???

   
 
 автор: cheops   (21.03.2006 в 23:58)   письмо автору
 
   для: amsun   (21.03.2006 в 20:27)
 

NULL при умножении или сложении с числом даёт NULL, передача в качестве параметра NULL даёт NULL - любые операции с NULL дают NULL - это понятно любые действия с неопределённым значением дают неопределённое значение. Пустая строка - это рядовое значение...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования