Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
О.Б.Д / лекции / 2БД.doc
Скачиваний:
35
Добавлен:
30.05.2020
Размер:
103.42 Кб
Скачать

2 Типи даних, що використовуються в sql-сервері

2.1 Системні типи даних

Один з основних моментів процесу створення таблиці – визначення типів даних для її полів. Тип даних поля таблиці визначає тип інформації, яка розміщуватиметься в цьому полі. Поняття типу даних в SQL Server повністю адекватне поняттю типу даних в сучасних язиках програмування. SQL-сервер підтримує велике число різних типів даних: текстові, числові, двійкові (див. таблицю 2.2).

Таблиця 2.2.

image smalldatetime bit binary

text real decimal char

uniqueidentifier money numeric timestamp

tinyint datetime smallmoney nvarchar

smallint float varbinary nchar

int ntext varchar sysname

2.2 Короткий огляд типів даних sql Server.

Для зберігання символьної інформації використовуються символьні типи даних, до яких відносяться CHAR (довжина), VARCHAR (довжина), NCHAR (довжина), NVARCHAR (довжина). Останні два призначені для зберігання символів Unicode. Максимальне значення довжини обмежено 8000 знаками (4000 – для символів Unicode).

Зберігання символьних даних великого об'єму (до 2 Гб) здійснюється за допомогою текстових типів даних TEXT і NTEXT.

До цілочисельних типів даних відносяться INT (INTEGER), SMALLINT, TINYINT, BIGINT. Для зберігання даних цілочисельного типу використовується, відповідно, 4 байти (діапазон від -231 до 231-1 ), 2 байти (діапазон від -215 до 215-1 ), 1 байт (діапазон від 0 до 255 ) або 8 байт (діапазон від -263 до 263-1 ). Об'єкти і вирази цілочисельного типу можуть застосовуватися в будь-яких математичних операціях.

Числа, у складі яких є десяткова крапка, називаються нецілочисельними. Нецілочисельні дані розділяються на два типи – десяткові і приблизні.

До десяткових типів даних відносяться типи DECIMAL [(точність[,масштаб])] або DEC і NUMERIC [(точність[,масштаб])]. Типи даних DECIMAL і NUMERIC дозволяють самостійно визначити формат точності числа з плаваючою точкою. Параметр точність указує максимальну кількість цифр даних цього типу (до і після десяткової точки), що вводяться, а параметр масштаб – максимальну кількість цифр, розташованих після десяткової крапки. В звичайному режимі сервер дозволяє вводити не більше 28 цифр, що використовуються в типах DECIMAL і NUMERIC (від 2 до 17 байт).

До приблизних типів даних відносяться FLOAT (точність до 15 цифр, 8 байт) і REAL (точність до 7 цифр, 4 байти). Ці типи представляють дані у форматі з плаваючою точкою, тобто для представлення чисел використовується мантиса і порядок, що забезпечує однакову точність обчислень незалежно від того, наскільки мале або велике значення.

Для зберігання інформації про дату і час призначені такі типи даних, як DATETIME і SMALLDATETIME, використовуючі для представлення дати і часу 8 і 4 байта відповідно.

Типи даних MONEY і SMALLMONEY роблять можливим зберігання інформації грошового типу; вони забезпечують точність значень до 4 знаків після коми і використовують 8 і 4 байта відповідно.

Тип даних BIT дозволяє зберігати один біт, який приймає значення 0 або 1.

В середовищі SQL Server реалізований ряд спеціальних типів даних.

Тип даних TIMESTAMP застосовується як індикатор зміни версії рядка в межах бази даних.

Тип даних UNIQUEIDENTIFIER використовується для зберігання глобальних унікальних ідентифікаційних номерів.

Тип даних SYSNAME призначений для ідентифікаторів об'єктів.

Тип даних SQL_VARIANT дозволяє берегти значення будь-якого з підтримуваних SQL Server типів даних за винятком TEXT, NTEXT, IMAGE і TIMESTAMP.

Тип даних TABLE, подібно тимчасовим таблицям, забезпечує зберігання набору рядків, призначених для подальшої обробки. Тип даних TABLE може застосовуватися тільки для визначення локальних змінних і значень, що повертаються функціями користувача. Приклад використовування типу даних TABLE приведений в лекції, присвяченій функціям користувача.

Тип даних CURSOR потрібен для роботи з такими об'єктами, як курсори, і може бути запитаний тільки для змінних і параметрів збережених процедур. Курсори SQL Server є механізмом обміну даними між сервером і клієнтом. Курсор дозволяє клієнтським додаткам працювати не з повним набором даних, а лише з одним або кількома рядками. Приклади використовування даних типа CURSOR будуть розглянуті в лекціях, присвячених курсорам і береженим процедурам.

Отримання інформації про типи даних

Одержати список всіх типів даних, включаючи користувацькі, можна з системної таблиці systypes:

SELECT * FROM systypes

Соседние файлы в папке лекции