- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть скрипт, который передает из формы значение checkbox (значение - 0). Т.к. это checkbox, то значение соответственно может быть передано, а может и нет.
Есть таблица в БД с полем tinyint (длина значения 1) с дефолтным значением 1.
Когда я не передаю значение checkbox (т.е. переменная, которая должна принять это значение остается пустой - '') и соответственно в запросе к БД она тоже пустая. Значит по идее в в поле tinyint должно остаться дефолтное значение (иначе нахрен оно там), но как бы не так - в поел появляется 0.
Что это, глюк какой-то или я чего-то недопонимаю с дефолтными значениями?
Дефолтное значение применяется только если поле в инсерте совсем не указано, или же, если мне не изменяет память, если в это поле пихаешь NULL(а не '')
Значение по умолчанию присваивается, если значение не присваивается вовсе, однако пустое значение тоже значение. Советую перед вставкой провеять, если значение пустое, то ставить «1».
P.S. или же не присваивать это значение вовсе, если требуется значение по умолчанию.
skAmZ добавил 27.02.2010 в 12:32
Talamat, NULL тоже может быть в качестве значения, если не указано not null в свойстве поля, а если указано, то будет ошибка MySQL)