Значение по умолчанию в бд - нет или null

ЕСТЬ РЕШЕНИЕ InstantCMS 1.X
#1 16 марта 2025 в 21:10

 Сайт на первой ветке, но суть не в этом.

Перенёс сайт на впс, тут у меня вместо mysql  — mariadb, php 5.6

Так всё нормально, но заметил, что новые записи не записываются в БД. Отладка ругается на все столбцы в таблице где нет значения по умолчанию. Там во многих столбцах значится по умолчанию «нет». Если установить null, то ок. Но подозреваю, что это не лучшее решение.

Не подскажете, может быть что то поправить в настройках php, чтобы нормально воспринималось «нет», или заменить всё на null будет нормально?

#2 16 марта 2025 в 21:17

Если данные в столбцах могут быть пустыми, лучше использовать NULL. Это стандартный подход в реляционных базах данных. Если же «нет» — это важное значение для логики, то установи его как значение по умолчанию для столбца.

#3 16 марта 2025 в 21:43

Понятно, спасибо 

Сегодня в 01:31
#4 16 марта 2025 в 22:15

Не подскажете, может быть что то поправить в настройках php, чтобы нормально воспринималось «нет», или заменить всё на null будет нормально?

Нил™

Отключить strict mode. Либо в конфигурации sql_mode="" либо в классе db где-то после установки соединения

  1. mysqli_query($this->db_link, "SET sql_mode=''");
#5 16 марта 2025 в 22:44
Отключить strict mode.
Fuze

Спасибо! То, что нужно 

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.

Похожие темы

Аватарки

HTML / CSS / PHP / JS / RegExp Создана 4 года назад 11 сообщений

Похожее в блогах

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.