Типы данных и типы таблиц.ppt
- Количество слайдов: 25
Типы данных и типы таблиц
Типы данных в My. SQL Группа типов Типы Числа TINYINT, SMALLINT, MEDIUMINT, BIGINT FLOAT, DOUBLE, NUMERIC, DECIMAL Текст CHAR VARCHAR TINYTEXT, MEDIUMTEXT, LONGTEXT TINYBLOB, MEDIUMBLOB, LONGBLOB Дата и время DATETIMESTAMP DATE TIME YEAR Списки ENUM SET
Целые числа Field_name INT(length) UNSIGNED Тип Допустимые значения Число байт для хранения значений TINYINT 0 – 255 -128 – 127 1 SMALLINT 0 – 65535 -32768 – 32767 2 MEDIUMINT 0 – 16777215 -8338608 – 8338607 3 INT 0 – 4294967295 -2147483648 – 2147483647 4 BIGINT 0 – 18446774073709551615 -9223372036854775808 – 9223372036854775808 8
Числа с плавающей точкой • FLOAT(length, decimal) – число с плавающей точкой обычной точности(4). Значения допустимы в пределах от -3. 402823466 Е+38 до -1. 175494351 Е-38 и от 1. 175494351 Е-38 до 3. 402823466 Е+38 • DOUBLE(length, decimal) – число с плавающей точкой удвоенной точности(8). Значения допустимы в пределах от -1. 7976931348523157 Е+308 до -2. 2250738585072014 Е-308 и и от 2. 2250738585072014 Е-308 до 1. 7976931348523157 Е+308
Тип NUMERIC (DECIMAL) Тип NUMERIC(length, decimal) или DЕCIMAL(length, decimal) – число с плавающей точкой, хранящееся в виде строки. Максимальный интервал значений типа DECIMAL тот же, что и для DOUBLE, но действительный интервал может быть ограничен выбором значений атрибутов.
Тип CHAR(length) – строка фиксированной длины. Длина может принимать любое значение от 1 до 255. Любой текст меньшей длины будет дополнен пробелами в конце строки. My. SQL по умолчанию считает текст нечувствительным к регистру букв. Если требуется сделать текст чувствительным к регистру букв, то при описании поля нужно добавить BINARY: Field_name CHAR(length) BINARY
Тип VARCHAR(length) – строки переменной длины. Значение типа VARCHAR запоминает столько байт, сколько ввел пользователь, плюс один байт для записи длины. Концевые пробелы при сохранении удаляются. Строка также нечувствительна к регистру букв. Тип CHAR предпочтительнее использовать, если хранимые значения имеют одинаковую длину или длина отличается незначительно.
Типы TEXT и BLOB Тип BLOB представляет собой двоичную строку переменной длины, чувствительную к регистру букв. Тип TEXT – текстовая строка, нечувствительная к регистру букв.
Тип YEAR – это однобайтный тип данных для хранения значения года. Данные можно вводить в формате YYYY, либо YY. Диапазон значений года – от 1901 до 2155. Все недопустимые значения преобразуются в 0.
Тип TIME • • Тип TIME – тип данных для хранения времени. Значение всегда выводится в формате HH: MM: SS. Вводить данные можно в следующих форматах: HH: MM: SS HHMM HH Значения могут быть в пределах от -838: 59 до 838: 59
Типы DATE, DATETIME и TIMESTAMP Тип данных DATE предназначен для хранения значений года, месяца и дня. Значения всегда выводятся в формате YYYY-MM-DD. Ввод данных может осуществляться в следующих форматах: • YYYY-MM-DD • YYMMDD Тип данных DATETIME используется для полей, хранящих информацию как о дате, так и о времени. Тип данных TIMESTAMP(length) можно использовать для автоматической записи текущих даты и времени при выполнении операций INSERT и UPDATE.
Тип ENUM Поле типа ENUM может содержать одно значение из предварительно заданного набора. Данные могут быть введены как одно из текстовых полей или как число, соответствующее одному из элементов набора. Набор может содержать до 65536 различных элементов. Каждое из допустимых значений имеет индекс.
Тип SET Поле типа SET может содержать любое количество предварительно заданных значений. Данные могут быть заданы как список разделенных запятыми значений. В одном наборе может быть до 64 различных элементов.
Имена баз данных В My. SQL только 2 правила именования баз данных – имя БД может иметь длину до 64 символов и может содержать любые символы, кроме прямого слэша, обратного слэша и точки.
Имена таблиц в вашей базе данных должны говорить о том, какие данные в них хранятся. Имя таблицы может иметь длину до 64 символов и не может включать символы прямого слэша, обратного слэша и точки. Зарезервированные слова не рекомендуется использовать в качестве имен таблиц и полей.
Имена полей и обращение к полю Имя поля может включать любые символы (до 64). Не рекомендуется использовать имена, подобные 1 е. Если имя поля относится к служебным словам или содержит специальные символы, его следует заключать в апострофы при использовании в выражениях.
Типы таблиц My. SQL поддерживает 2 различных типа таблиц – транзакционные (Inno. DB и BDB) и без поддержки транзакций(HEAP, ISAM, MERGE, My. ISAM). Преимущества транзакционных таблиц: • Надежность • Можно сочетать несколько операторов и принимать эти операторы с помощью одной команды COMMIT • Можно запустить ROLLBACK, чтобы отменить внесенные изменения • Если произойдет сбой во время обновления, все изменения будут восстановлены Преимущества таблиц без поддержки транзакций: • Работа с ними происходит намного быстрее • Для них требуется меньше дискового пространства • Для обновлений используется меньше памяти
ISAM • • ISAM – этот тип является устаревшим. Индекс хранится в файле с расширением ISM, а данные- ISD. Свойства таблиц ISAM: Ключи сжатой и фиксированной длины Фиксированная и динамическая длина записи Максимальная длина ключа 256 Данные хранятся в машинном формате
My. ISAM Основан на коде ISAM и обладает большим количеством полезных дополнений. Индекс хранится в файле с расширением MYI, а данные – MYD. Основные отличия таблиц ISAM от My. ISAM: • Таблицы ISAM не являются переносимыми в двоичном виде с одной ОС на другую • Невозможна работа с таблицами размером больше 4 Гб • Динамические таблицы больше фрагментируются
HEAP Для HEAP- таблиц используются хэш -индексы; эти таблицы хранятся в памяти. Благодаря этому обработка осуществляется очень быстро, однако в случае сбоя будут утрачены все данные.
Berkeley. DB Тип BDB обеспечивает транзакционный обработчик таблиц. Использование этого типа повышает для ваших таблиц шанс уцелеть после сбоев, а также предоставляет возможность осуществлять операции COMMIT и ROLLBACK.
Inno. DB Эти таблицы снабжены обработчиком, обеспечивающим безопасные транзакции с возможностями фиксации транзакции, отката и восстановления после сбоя. Предназначается для получения максимальной производительности при обработке больших объемов данных.
MERGE Таблица типа MERGE представляет собой коллекцию идентичных таблиц My. ISAM, которые могут использоваться как одна таблица. Возможности, обеспечиваемые таблицами типа MERGE: • Увеличение скорости работы • Более эффективный поиск • Более простое восстановление • Быстрая обработка большого количества файлов как одного • Обход ограничения на размер файлов в операционных системах Недостатки: • Для создания таблицы типа MERGE можно использовать только идентичные таблицы My. ISAM • Поля AUTO_INCREMENT не обновляются автоматически применении команды INSERT • Не работает команда REPLACE • Ключи считываются медленнее
Спасибо за внимание!
Типы данных и типы таблиц.ppt