Книга: Основы программирования в Linux

Типы данных

Типы данных

Итак, у вас есть действующий сервер MySQL, безопасная регистрация вашего пользователя и база данных, готовая к применению. Что дальше? Сейчас нужно создать несколько таблиц со столбцами для хранения данных. Но прежде чем вы сможете сделать это, следует узнать о типах данных, поддерживаемых MySQL.

Типы данных MySQL довольно обычны, поэтому мы лишь бегло пробежимся по основным типам, и как всегда более подробную информацию можно найти в руководстве по MySQL на Web-сайте MySQL.

Тип Boolean

Столбец логического типа можно определить с помощью ключевого слова BOOL. Как вы и ожидали, в нем могут храниться значения TRUE и FALSE, а также специальное "неопределенное" значение баз данных NULL.

Символьный тип

В табл. 8.7 перечислены все доступные символьные типы. Первые три — стандартные, оставшиеся три специфичны для MySQL. Мы полагаем, что на практике вы будете придерживаться стандартных типов.

Таблица 8.7

Определение Описание
CHAR Одиночный символ
CHAR(N) Символьная строка длиной точно N символов, которая будет при необходимости заполняться пробелами. Максимальная длина 255 символов
VARCHAR(N) Массив переменной длины из N символов. Максимальная длина 255 символов
TINYTEXT Аналогичен VARCHAR(N)
MEDIUMTEXT Текстовая строка длиной до 65 535 символов
LONGTEXT Текстовая строка длиной до 2??–1 символов

Числовой тип

В табл. 8.8 показано, что числовые типы делятся на целочисленные и типы с плавающей точкой.

Таблица 8.8

Определение Тип Описание
TINYINT Целочисленный 8-битный тип данных
SMALLINT Целочисленный 16-битный тип данных
MEDIUMINT   24-битный тип данных
INT Целочисленный 32-битный тип данных. Это стандартный тип и хороший выбор для данных общего назначения
BIGINT Целочисленный 64-битный знаковый тип данных
FLOAT(P) С плавающей точкой Числа с плавающей точкой с точностью как минимум P знаков
DOUBLE(D, N) С плавающей точкой Числа с плавающей точкой и двойной точностью из D цифр и N десятичных знаков
NUMERIC(P, S) С плавающей точкой Действительные числа длиной P разрядов всего с S десятичными разрядами из них. В отличие от DOUBLE это точно заданное число (exact number), поэтому оно больше подходит для хранения денежных сумм, но обрабатывается менее эффективно
DECIMAL(Р, S) С плавающей точкой Синоним NUMERIC

Мы полагаем, что в основном вы будете пользоваться типами INT, DOUBLE и NUMERIC, поскольку они ближе всего к стандартным типам SQL. Остальные типы нестандартные и могут отсутствовать в тех системах управления базами данных, куда вы решите переместить данные когда-либо в будущем.

Временной тип

В табл. 8.9 перечислены пять имеющихся временны?х типов.

Таблица 8.9

Определение Описание
DATE Хранит даты с 1 января 1000 г. по 31 декабря 9999 г.
TIME Хранит время с -838:59:59 до 838:59:59
TIMESTAMP Хранит метку времени, начиная с 1 января 1970 г. и по 2037 г.
DATETIME Хранит даты с 1 января 1000 г. по последнюю секунду 31 декабря 9999 г.
YEAR Хранит номер года. Будьте осторожны с двузначными величинами, поскольку они неоднозначны и автоматически преобразуются в четырехзначные числа.

Учтите, что следует быть внимательными при сравнении значений типов DATE и DATETIME в отношении способа обработки значения времени; результаты могут оказаться неожиданными. Подробности ищите в руководстве по MySQL, поскольку поведение разных версий СУРБД слегка отличается.

Оглавление книги


Генерация: 0.059. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз