Подтвердить что ты не робот

Логическое поле в mysql db

Я хочу сохранить свое значение как логическое значение в моей базе данных mysql. Но каким-то образом я не смог его сохранить, mysql автоматически сохраняет его тип tinyInt. Также скажите значения по умолчанию для boolean. как мы передаем значения?

4b9b3361

Ответ 1

В MySQL BOOLEAN тип является синонимом TINYINT. Нет выделенного типа BOOLEAN. Ваулы, которые имеют accepeted, являются значениями для TINYINT i.e 0 для false, 1-255 (предпочтительно 1) для истины.

Ответ 2

MySQL не имеет типа BOOLEAN, если вы создаете столбец BOOLEAN, это будет фактически TINYINT.

Обработка TINYINT в качестве логического значения не слишком проблематична, хотя, если вы считаете 0 как false, а non-0 - true, то это нормально. В PHP инструкция типа if ($column) вернет true, если $column - любое значение, кроме 0 или что-то, что оценивается равным 0. Если вам нужно, чтобы явным образом был bool, вы можете легко его преобразовать, выполнив $column = ($column != 0);