Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Типы данных MySQL. Перед созданием базы данных надо подумать о том, какиетипы данных будут использованы.




Перед созданием базы данных надо подумать о том, какиетипы данных будут использованы.

Строковые типы

В MySQL определены следующие строковые типы (табл. 2).

Таблица 2.Тип столбца и требуемый объем памяти

Тип столбца Необходимый объем памяти
CHAR(M) М байтов, 0≤М≤255
VARCHAR(M) L+1 байтов, где L≤M и 0≤М≤65 535
BINARY (М) М байтов, 0≤М≤255
VARBINARY(W) L+1 байтов, где L≤М и 0≤М≤255
TINYBLOB, TINYTEXT L+1 байтов, где L<28
BLOB, TEXT L+2 байтов, где L<216
MEDIUMBLOB, MEDIUMTEXT L +3 байтов, где L < 224
LONGBLOB, LONGTEXT L +4 байтов, где L<232
ENUM('value1 ' , 'value2 ',...) 1 или 2 байта в зависимости от числа значений (65 535 значений максимум)
SET('value1 ' , 'value2 ',...) 1 , 2, 3, 4 или 8 байтов в зависимости от числа значений (64 значения максимум)

 

Типы CHAR (строки фиксированной длины) и VARCHAR (строки произвольной длины) – это типы, предназначенные для записи коротких фрагментов текста. Длину каждого из них можно регулировать числом M. Записи в столбцы типа CHAR будут дополняться пробелами до максимальной длины. При этом длина строки не зависит от размеров данных, в то время как в столбцах с типом VARCHAR размер поля зависит от размеров данных. MySQL удаляет пробелы в конце текстовых строк у char во время извлечения и у VARCHAR во время сохранения.

Тип VARCHAR позволяет экономить память, но при хранении данных приходится указывать, сколько памяти занимает введенное значение. Это значение сервер использует для того, чтобы определить, с какой позиции начнется запись следующего значения. При записи данных типа CHAR серверу не приходится указывать в каждом поле реальную длину строки, а при извлечении данных считывать это значение для того, чтобы определить, где начнется следующее значение поля, поэтому сервер работает с такими строками быстрее, зато используется несколько больший объем памяти.

Если вы при определении таблицы зададите тип данных в поле фамилии водителя как CHAR (10), а потом попробуете ввести более длинную фамилию, то вводимый текст будет усечен до указанной в определении таблицы длины.

Тип BLOB (BinaryLargeObject, большой двоичный объект) используется для хранения двоичных данных.

Данные типа ENUM могут принимать одно из нескольких заранее заданных значений: ENUM (value1, value2,...). Например, предусмотрено, что в некотором столбце должен храниться ответ на вопрос, а допустимыми значениями ответа являются "да" и "нет". Тогда value1 будет "да", avalue2 – "нет".

Тип SET предусматривает, что в поле одновременно может содержаться несколько из заранее заданного списка значений.


Поделиться:

Дата добавления: 2015-02-10; просмотров: 81; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты