MYSQL - Длина строки символов 20, поле принимает varchar (15), ошибки не генерируются? - PullRequest
0 голосов
/ 10 февраля 2012

Я создаю интерфейс PHP / HTML для базы данных MySQL.

Таблица, с которой я пытаюсь работать, определена с помощью столбца varchar (15).Я могу запустить (без ошибок) оператор вставки с символьной строкой длиной 20 символов.Столбец результирующей записи усекается до 15 символов, но ошибка не генерируется.

Как получить это, чтобы сгенерировать ошибку?

Я знаю, что интерфейс может выполнять проверку ошибок, ноЯ хочу знать, как заставить базу данных отклонить данные.

1 Ответ

1 голос
/ 11 февраля 2012

MySQL довольно простителен и постарается принять все, что вы передадите, как можно лучше, молча конвертировать / усекать / обнулять при необходимости.

Так как вы этого не хотите, вам нужно включитьразличные варианты «строгого» режима: http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html

...