MySQL.RU .:. Одобрено лучшими российскими программистами
Справочное руководство по MySQL6.5.3.1 Молчаливые изменения определений столбцов
6.5.3.1 Молчаливые изменения определений столбцов
В некоторых случаях MySQL без уведомления изменяет определение столбца,
заданное командой CREATE TABLE (Это может осуществляться также для
команды ALTER TABLE ):
-
Столбец
VARCHAR с длиной меньше, чем четыре, преобразуется в столбец
CHAR .
-
Если некоторый столбец в таблице имеет переменную длину, то и вся
строка в результате будет переменной длины. Следовательно, если
таблица содержит любые столбцы переменной длины (
VARCHAR , TEXT или
BLOB ), то все столбцы CHAR с длиной, превышающей три символа,
преобразуются в столбцы VARCHAR . Это в любом случае не влияет на
использование столбцов; в MySQL столбец VARCHAR представляет собой
просто иной способ хранения символов. MySQL выполняет данное
преобразование, поскольку оно позволяет сэкономить память и сделать
табличные операции более быстрыми. See section 7 Типы таблиц MySQL.
-
Количество выводящихся символов столбца
TIMESTAMP должно быть четным
и находиться в диапазоне от 2 до 14 . При задании размера вывода,
равного 0 или превышающего 14 , указанный размер приводится к 14 .
Нечетные величины размера вывода в пределах от 1 до 13 приводятся к
следующему четному числу.
-
В столбце
TIMESTAMP не может храниться литерал NULL ; установка
данного столбца в NULL устанавливает его в текущее значение даты и
времени. Поскольку столбцы TIMESTAMP ведут себя подобным образом, то
атрибуты NULL и NOT NULL неприменимы в обычном режиме и игнорируются
при их задании. DESCRIBE tbl_name всегда сообщает, что столбцу
TIMESTAMP могут быть присвоены величины NULL .
-
MySQL приводит в соответствие определенные типы столбцов, используемые
другими производителями баз данных SQL, к типам, принятым в MySQL.
See section 6.2.5 Использование типов столбцов из других баз данных.
Если необходимо увидеть, использует ли MySQL иной тип столбца, чем был
первоначально задан, следует запустить команду DESCRIBE tbl_name после
создания или изменения данной таблицы.
Некоторые другие изменения типов столбцов могут происходить при сжатии
таблицы с использованием утилиты myisampack . See section 7.1.2.3 Характеристики сжатых таблиц.
|