Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД Особливості мови SQL.doc
Скачиваний:
4
Добавлен:
16.08.2019
Размер:
651.78 Кб
Скачать

2.2. Створення таблиць.

Отже, після створення БД необхідно здійснити створення, зміна, а якщо потрібно - то і видалення таблиць. Ці дії відносяться до самих таблиць, а не до даних, які в них містяться.

Таблиці створюються командою CREATE TABLE. Ця команда створює порожню таблицю, тобто не містить записів. Очевидно, що значення в неї можна ввести, наприклад, за допомогою команди INSERT. Головне в команді CREATE TABLE - це визначення імені таблиці і опису набору імен полів, які указуються у відповідному порядку. Крім того, цією командою також обмовляються типи даних і розміри полів таблиці. Очевидно, що в кожній таблиці повинно бути, принаймні, одне поле.

Синтаксис команди CREATE TABLE наступний: CREATE TABLE <TABLE NAME>

(<COLUMN NAME> <DATA TYPE> [(<SIZE>)] <COLUMN NAME> <DATA TYPE> [(<SIZE>)]

... ) ;

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

Значення аргументу розміру залежить від типу даних. Якщо його не указувати, то СУБД сама буде призначати значення автоматично. Треба сказати, що для числових значень це часто буває кращим виходом, т.к. в цьому випадку всі поля такого типу отримають один і той же розмір, і будуть виключені проблеми їхньої загальної сумісності. Крім того, використовування аргументу розміру з деякими числовим даними не зовсім просте питання - якщо вимагається берегти великі числа, то необхідно переконатися в тому. що поля достатньо великі для розміщення даних.

В той же час, тип даних CHAR вимагає обов'язкової вказівки розміру. Аргумент розміру - це ціле число, визначальне максимальну кількість символів, яка може вміщати поле. Фактично, кількість символів такого поля може бути від нуля (якщо поле має значення NULL) до цього числа. За умовчанням аргумент розміру рівний 1, а це означає, що поле може містити тільки один символ.

Крім того, таблиці належать користувачу, який їх створив, а імена всіх таблиць, належних даному користувачу, повинні відрізнятися друга від друга так само. як і імена всіх полів усередині даної таблиці. Проте різні таблиці можуть використати однакові імена полів, навіть якщо вони належать одному і тому ж користувачу. Наприклад, поле з ім'ям SNUM присутнє в таблицях STUDENTS і USP. нітрохи не заважаючи один одному.

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

SA. STUDENTS

має на увазі, що звертання йде до таблиці STUDENTS, створеної користувачем з ідентифікатором дозволу (ГО) SA.

Наведемо приклад команди, яка створить структуру таблиці STUDENTS:

CREATE TABLE STUDENTS (SNUM INTEGER, SFAM CHAR (20), SIMA CHAR (10), SOTCH CHAR (15) STIP DECIMAL);

Порядок розташування полів в таблиці визначається тим. в якій послідовності вони вказані в команді створення таблиці.