Платформы корпоративных информационных систем


Комментарии



Комментарии


TINYIN'I ( length)/ INT1( length)

1

Целое с диапазоном значений от 0 до 255 без знака и от -128 до 127 со знаком.

SMALLINT ( length)/

2

Целое с диапазоном значений от

INT2( length)


0 до 65535 без знака и от -32768 до 32767 со знаком.

MEDIUMINT ( length)/

3

Целое с диапазоном значений от

INT3( length)/


0 до 16777215 без знака и от

MIDDLEINT ( length)


-8388608 до 8388607 со знаком.

INT (length)/

4

Целое с диапазоном значений от

INTEGER ( length)/


0 до 4294967295 без знака и от

INT4( length)


-2147483648 до 8388607 со знаком.

BIGINT (length)/

8

Целое с диапазоном значений от

INT8( length)


0 до 184467447370955165 без зна-



ка и от -9223372036854775808



до 9223372036854775807 со зна-



ком.

FLOAT/FLOAT (4)/ FLOAT

4

Число с плавающей запятой

(length, decimal )/ FLO-


с максимальным значением

AT4( length, decimal )


+/-3.402823466Е38 и минималь-



ным (не нулевым) значением



+/-1.175494351Е-38.

DOUBLEPRECISION

8

Число с плавающей запятой

(length, decimal )/


с максимальным значением

DOUBLE ( length, decimal )/


+/-1.7976931348623157Е308 и

REAL (length, decimal )/


минимальным (не нулевым) значе-

FLOAT8( length, decimal )/


нием +/-2.2250738585072014Е-308.

FLOAT (8)



DECIMAL ( length, decimal )/

length

Число с плавающей запятой с ди-

NUMERIC ( length, decimal )


апазоном значений как у типа DOUBLE, которое хранится как поле CHAR . DECIMAL и NUMERIC всегда расцениваются как поля CHAR , которые содержат цифровое значение.

TIMESTAMP (length)

4

Значение timestamp, которое обновляется каждый раз, когда изменяется запись. Также можно приписать значение вручную. При приписывании значения NULL в поле запишется текущее время. Поле длины (необязательное) определяет внешний формат записи. Длина 14 (значение по умолчанию) выводит строку типа ' YYYYMMDDHHMMSS' , 12 flacT'YYMMDDHHMMSS',' 8- 'YYYYMMDD', и 6 выдаст 'YYMMDD'.

DATE

3

Значение даты, которое хранит год, месяц и день. Значения всегда выводятся в формате 'YYYY-MM-DD', но могут быть введены в любом из следующих форматов: 'YY-MM-DD', 'YYYY-MM-DD', 'YYMMDD' или 'YYYYMMDDHHMMSS' (часть, хранящая время, игнорируется).

TIME

3

Значение времени, хранящее часы, минуты и секунды. Значения всегда выводятся в формате 'НН: MM: SS', но могут быть введены в любом из следующих форматов: 'НН: MM: SS', 'HHMMSS', 'ННММ' (секунды равны '00'), или 'НН' (минуты и секунды обнуляются).

DATETIME

8

Сохраняет и дату и время. Значения вводятся и выводятся в формате 'YYYY-MM-DD HH: MM: SS'.

YEAR

1

Значение, сохраняющее год. Может быть введено либо в формате 'YYYY', либо 'YY', будет выведено либо как двухзначный, либо как четырехзначный год, в зависимости от формата ввода. Двухзначный год может находиться в диапазоне между 1970 и 2069 включительно. Этот тип данных в настоящее время поддерживает года с 1901 по 2155.

CHAR (length) /ШЬЮ (length-)

length

Строка фиксированной длины. Любой текст меньшей длины будет дополнен пробелами в конце строки. Все конечные пробелы, вставленные либо MySQL, либо пользователем, удаляются при выводе значения. MySQL по умолчанию считает текст не чувствительным к регистру (см. модификатор BINARY ниже). Тип BINARY эквивалентен CHAR с модификатором BINARY .

CHAR (length) VARYING/ VARCHAR (length)/ VARBINARY ( length)

length

Текстовая строка переменной длины (нечувствительная к регистру) с установленной максимальной длиной. Максимальная длина должна лежать в диапазоне между 1 и 255 символами. Все концевые пробелы удаляются при сохранении данных этого типа. Тип VARBINARY эквивалентен VARCHAR с BINARY модификатором.

TINYTEXT

length+1

Текстовое поле (нечувствительно к регистру) с максимальной длиной в 255 символов.

TINYBLOB

length+1

Двоичное поле (чувствительно к регистру) с максимальной длиной в 255 символов. Двоичные данные чувствительны к регистру.

TEXT/LONG VARCHAR

length+2

Текстовое поле с максимальной длиной в 64 Кбайт текста.

BLOB/LONG VARBINARY

length+2

Двоичное поле с максимальным размером в 64 Кбайт данных.

MEDIUMTEXT

length+3

Текстовое поле с максимальной длиной в 16 Мбайт текста.

MEDIUMBLOB

length+3

Двоичное поле с максимальным размером в 16 Мбайт данных.

LONGTEXT

length+4

Текстовое поле с максимальной длиной в 4 Гбайт текста.

LONGBLOB

length+4

Двоичное поле с максимальным размером в 4 Гбайт данных.

ENUM

1,2

Поле, которое может содержать одно значение из предварительно заданного набора (например ENUM ("apples", "oranges", "bananas")). Данные могут быть введены как одно из текстовых значений набора либо как число, соответствующее одному из элементов набора (номер первого элемента 1). В поле всегда может быть внесено значение NULL. Набор (коллекция) может содержать до 65535 разных элементов. Если в наборе меньше 256 элементов, поле займет только один байт (иначе его размер равен двум байтам).

SET

1—8

Поле может содержать любое количество предварительно заданных значений (например SET ("rock," "pop," "country," "western")). Данные могут быть заданы как список разделенных запятыми значений либо как двоичное битовое представление значений (например 12, т. е. 1100 в двоичном виде, относится к "country, western" в предыдущем примере). В одном наборе может быть до 64 элементов.

В дополнение к основным типам могут использоваться некоторые модификаторы.

decimal

Максимальное количество цифр справа от запятой в числе с плавающей запятой. Любое значение с более длинной дробной частью будет округлено. Например, для поля price FLOAT(5,2) значение 4.34 будет показано как 4.34, значение 234.27 будет показано как 234.3 (для соответствия общей максимальной длине), значение 3.331 будет выглядеть как 3.33 (для соответствия максимальной длине дробной части).

length

Количество символов для числовых значений, показываемое пользователю. Включает десятичные запятые, знаки и индикаторы экспонент. Например, поле peanuts INT(4) имеет допустимый диапазон от -999 до 9999. MySQL сохранит значение, выходящие за пределы заданного диапазона, пока оно не выйдет за пределы максимального размера для своего типа. Если вы сохраните значение вне заданного диапазона, MySQL выдаст предупреждение, но будет функционировать нормально.

При использовании с типом TIMESTAMP модификатор length определяет формат, используемый для timestamp.

При использовании с символьными (текстовыми) типами length определяет количество символов. Для символьных типов с фиксированной длиной length это точное число символов, используемое для хранения данных. Для текстовых типов с переменной длиной length это максимально возможная длина строки.

Атрибут length является необязательным для всех типов, кроме DECIMAL/NUMERIC , CHAR и VARCHAR .

Поскольку тип DECIMAL/NUMERIC хранится как символьная строка, он ограничен максимальной длиной точно так же, как и поле CHAR. Поэтому ввод чисел больше указанного диапазона вызовет такую же ошибку, что и при вводе слишком длинной строки в поле CHAR.

precision

Этот атрибут доступен для типа FLOAT в целях совместимости с системой ODBC. Значение этого атрибута, равное 4, указывает на обычное вещественное число (то же, что и FLOAT без атрибута точности), а значение 8 определяет число с плавающей запятой двойной точности (то же, что поле DOUBLE).

AUTO_INCREMENT

Атрибут позволяет автоматически обновлять числовое поле. Это удобно для создания уникальных идентификаторов для записей в таблице. Данные могут быть записаны и прочитаны из такого поля, как из обычного, но при вводе значения NULL или 0 существующее значение автоматически увеличивается на единицу. Текущее значение поля AUTO_INCREMENT может быть получено с помощью функции LAST_INSERT_ID (см. SELECT ниже).

BINARY

Атрибут используется с типами CHAR и VARCHAR- для указания на двоичные данные в текстовой строке. Единственным эффектом этого атрибута будет чувствительность к регистру при сортировке данных. По умолчанию MySQL игнорирует регистр при сортировке текста.

DEFAULT value

Атрибут приписывает полю значение по умолчанию. Это значение будет присвоено полю в случае, если во вводимой в таблицу записи это поле пустое. Если значение по умолчанию не определено и нет ограничения NOT NULL , то будет записано значение NULL. В случае NOT NULL MySQL запишет значение на основе типа поля.

NOT NULL

Этот атрибут гарантирует, что каждая запись в столбце будет иметь какое-либо, отличное от NULL, значение. Попытка вставить в такое поле значение NULL вызовет ошибку.

NULL

Атрибут указывает на допустимость значения NULL. Это атрибут по умолчанию в случае, если никакой атрибут не указан. Поля, входящие в состав индекса, не могут иметь атрибут NULL. (Он будет проигнорирован, даже если он указан.)

PRIMARY KEY

Атрибут автоматически делает поле первичным ключом таблицы. Таблица может иметь только один первичный ключ (см. ниже). Любое поле, являющееся первичным ключом, должно иметь атрибут NOT NULL.

REFERENCES table [(column, . . . )] [MATCH FULL | MATCH PARTIAL] [ON

DELETE option] [ON UPDATE option]

Атрибут в настоящее время не имеет эффекта. MySQL понимает полный синтаксис команды, но не обрабатывает ее. Этот модификатор поля поддерживается для облегчения импорта SQL из разных источников. Возможно также, что следующая версия MySQL будет полностью поддерживать эту функцию.

UNSIGNED

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

ZEROFILL

Атрибут используется с целочисленными типами для добавления нулей перед числом, пока не будет достигнута длина, максимальная для типа. Например, поле counter INT(5) ZEROFILL покажет число 132 как 00132.









Начало  Назад  Вперед


Книжный магазин