- •1 Типи даних язика sql, визначені стандартом
- •1.1 Символьні дані
- •1.3 Точні числа
- •1.4 Округлені числа
- •1.5 Дата і час
- •1.6 Поняття домена
- •2 Типи даних, що використовуються в sql-сервері
- •2.1 Системні типи даних
- •2.2 Короткий огляд типів даних sql Server.
- •2.3 Перетворення типів
- •3 Основні поняття ms sql Server
- •3.1 Вирази
- •4 Управляючі конструкції sql
- •5 Основні об’єкти структури бази даних sql-серверу
- •5.1 Таблиці
- •5.2 Уявлення
- •5.7 Призначені для користувача типи даних
- •5.8 Обмеження цілісності
- •5.9 Правила
- •5.10 Умовчання
- •Контрольні питання
1.4 Округлені числа
Тип округлених чисел застосовується для опису даних, які не можна точно представити в комп'ютері, зокрема дійсних чисел. Округлені числа або числа з плаваючою крапкою представляються в науковій нотації, при якій число записується за допомогою мантиси, помноженої на певний ступінь десяти (порядок), наприклад: 10Е3, +5.2Е6, -0.2Е-4. Для визначення даних дійсного типу використовується формат:
<дійсний_тип>::={FLOAT[точність]| REAL |DOUBLE PRECISION}
Параметр точність задає кількість значущих цифр мантиси. Точність типів REAL і DOUBLE PRECISION залежить від конкретної реалізації.
1.5 Дата і час
Тип даних "дата/час" використовується для визначення моментів часу з деякою встановленою точністю. Стандарт SQL підтримує наступний формат:
<тип_дати/часу>::=
{DATE|TIME[точність][WITH TIME ZONE]|TIMESTAMP[точність][WITH TIME ZONE]}
Тип даних DATE використовується для зберігання календарних дат, що включають поля YEAR (рік), MONTH (місяць) і DAY (день). Тип даних TIME – для зберігання відміток часу, що включають поля HOUR (година), MINUTE (хвилина) і SECOND (секунда). Тип даних TIMESTAMP – для сумісного зберігання дати і часу. Параметр точність задає кількість дробових десяткових знаків, що визначають точність збереження значення в полі SECOND. Якщо цей параметр опускається, за умовчанням його значення для стовпців типа TIME приймається рівним нулю (тобто зберігаються цілі секунди), тоді як для полів типа TIMESTAMP він приймається рівним 6. Наявність ключового слова WITH TIME ZONE визначає використовування полів TIMEZONE HOUR і TIMEZONE MINUTE, тим самим задаються година і хвилини зсуву зонального часу по відношенню до універсального координатного часу (Гринвіцькому часу).
Дані типа INTERVAL використовуються для представлення періодів часу.
1.6 Поняття домена
Домен – це набір допустимих значень для одного або декількох атрибутів. Якщо в таблиці бази даних або в декількох таблицях присутні стовпці, що мають одні і ті ж самі характеристики, можна описати тип такого стовпця і його поведінку через домен, а потім поставити у відповідність кожному з однакових стовпців ім'я домена. Домен визначає всі потенційні значення, які можуть бути привласнені атрибуту.
Стандарт SQL дозволяє визначити домен за допомогою наступного оператора:
<визначення_домена>::=CREATE DOMAIN імя_домена [AS] тип_даних
[ DEFAULT значення] [ CHECK (припустимі_значення)]
Кожному створюваному домену привласнюється ім'я, тип даних, значення за умовчанням і набір припустимих значень. Слід зазначити, що приведений формат оператора є неповним. Тепер при створенні таблиці можна вказати замість типу даних ім'я домена.
Видалення доменів з бази даних виконується за допомогою оператора:
DROP DOMAIN імя_домена [ RESTRICT |CASCADE]
У разі вказівки ключового слова CASCADE будь-які стовпці таблиць, створені з використанням домена, що видаляється, будуть автоматично змінені і описані як такі, що містять дані того типа, який був вказаний у визначенні домена, що видаляється.
Альтернативою доменам в середовищі SQL Server є призначені для користувача типи даних.
