Бинарные типы данных.

Типы данных для хранения информации о времени.

Денежные типы данных.

Нецелочисленные типы данных.

Числовые целые типы данных.

Типы данных

Понятие типа данныхв SQL Server полностью адекватно понятию типа данных в современных языках программирования. Тип данных определяет диапазон значений, которые можно сохранить в переменной или колонке таблицы.

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

К целочисленным типам данных (общее название – integer) относятся следующие типы данных:

Int(или Integer) – для хранения данных используются 32 бита или 4 байта;

Small int– для хранения данных используются 16 бит, или 2 байта;

Tinyint– этот целочисленный тип занимает всего 1 байт и не содержит отрицательных чисел. Все биты интерпретируются как числовое значе­ние. Тип данных tinyint позволяет хранить значения в интервале от 0 до 255.

При выборе того или иного типа данных необходимо исходить из физических значений хранимых данных. Целочисленные типы данных используются для построения индексов и первичных ключей.

Числа, в составе которых есть десятичная точка, называются нецелочисленными. Microsoft разделяет нецелочисленные данные на два типа: десятичные(decimal) и приблизительные(approximate).

Десятичные данные физически хранятся в SQL Server 7.0 не в виде чисел, а в виде последовательности цифр. Для представления каждой десятичной цифры обычно используются 4 бита, то есть один байт позволяет хранить две десятичных цифры, или значение от 0 до 99.

Денежные типы данных обеспечивают хранение значений до 4-х знаков после запятой.

Maney – 8 байт;

Smallmaney – 4 байта.

Datetime – для представления данных этого типа SQL Server 7.0 использует 8 байт. В первых 4 байтах хранится информация о дате. Это значение – своего рода смещение относительно базовой даты. В качестве базовой даты было выбрано 1 января 1753 г. Оставшиеся 4 байта хранят информа­цию о количестве миллисекунд, прошедших после полуночи данного дня. В итоге тип данных datetime позволяет хранить значения о дате и времени в диапазоне от 1 января 1753 г. до 31 декабря 9999 г. с точностью до 3,33 мс.

Binary(n)– этот тип данных позволяет хранить до 8000 байт. Значение n определяет количество байт, которое будет храниться. В таблице будет выделено n+4 байта (4 байта используются для хранения длины самого поля).

Varbinary(n)– этот тип данных идентичен типу binary с единственным отличием — в таблице для хранения данных этого типа выделяется ровно столько байт, сколько ввел пользователь, плюс 4 байта на описание длины. Аргумент n (максимальное значение – 8000) определяет только максимальную длину, при превышении которой происходит усечение данных.

Image– этот бинарный тип позволяет преодолевать ограничение длины в 8000 байтов, характерное для типов binary и varbinary. При использовании этого типа допускается хранение битовых полей длиной до 231–1 (2 147 483 647). Пространство в таблице для этого типа данных выделяется целыми страницами. Если в таблице имеется колонка с типом данных image, то первоначально сервер выделяет для нее одну страницу. При необходимости выделяются дополнительные страницы, которые связываются в цепочку.