1. Skip to Menu
  2. Skip to Content
  3. Skip to Footer

Лекція 9 - SQL:Створення та модифікація таблиць та індексів – оператори CREATE, ALTER

Створення таблиць бази даних – оператор CREATE TABLE
Створення індексів таблиць – оператори CREATE INDEX, DROP INDEX
Зміна структури таблиць бази даних – оператор ALTER TABLE
Усунення таблиць – оператор DROP TABLE

Створення таблиць бази даних – оператор CREATE TABLE

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

CREATE TABLE student
 (student _id   INTEGER, 
   surname   VARCHAR(40), 
   name    VARCHAR(30),  
   stipend   DECIMAL, 
   kurs     INTEGER, 
   city     VARCHAR(60), 
   birthday   DATE,      
   univ_id   INTEGER);

Створення індексів таблиць – оператори CREATE INDEX, DROP INDEX

Індексація дозволяє прискорити виконання операцій SELECT проте сповільнює операції INSERT та DELETE. Індекс зберігається в службовій таблиці, яка містить два поля. Перше поле представляє впорядковане значення індексу а друге – ідентифікатор запису в таблиці для якої створюється індекс. Індекси можна створювати як по одному, так і по декількох полях. При вказанні декількох індексних полів записи групуються по значенню першого індексу, всередині групи записи впорядковуються по другому індексу і т.д. Нехай таблиця EXAM_MARKS часто використовується для пошуку оцінок окремих студентів. Створюємо індекс цієї таблиці по полю STUDENT_ID

CREATE INDEX  student_marks ON exam_marks(student _id); 

Ім’я індекса (в даному випадку student_marks) має бути унікальним в базі даних. Сама таблиця (exam_marks) повинна бути створена і містити стовпці, по яких вона індексується. Після створення індексу всі подальші операції з ним здійснює СУБД. Якщо оцінки студентів необхідно впорядковувати ще й по даті, то оголошення індексу слід модифікувати

   CREATE INDEX  student_marks ON exam_marks(student _id, exam_date)

Для усунення індексу використовується команда DROP INDEX, наприклад

  DROP INDEX  student_marks; 

Зміна структури таблиць бази даних – оператор ALTER TABLE

Оператор ALTER TABLE використовується д ля додавання або зміни параметрів стовпців бази даних. Для додавання стовпців використовується умова ADD, а для зміни – CHANGE. При додаванні стовпчика необхідно вказати ім.’я таблиці, ім.’я стовпчика, його тип та довжину. В операторі також можна задати місце додавання стовпчика. Якщо стовпчик вставляється на перше місце задається опція FIRST, якщо після деякого стовпчика, то задається опція
AFTER <назва стовпчика після якого вставляємо>.
Якщо опцій розташування стовпчика не вказано, то він розташовується на останньому місці. Приклади

ALTER TABLE student  ADD id2  INT NOT NULL AFTER student _id ;
ALTER TABLE student   ADD id_final INT(6) ;
ALTER TABLE student  ADD id1 INT(8) FIRST ;

Модифікація типу стовпчика можлива лише тоді, коли стовпчик пустий. Якщо стовпчик заповнений, то його довжину не можна зменшувати. При зміні стовпчика спочатку вказується попередня назва стовпчика, а потім – його нова назва. Приклади

ALTER TABLE student  CHANGE id2  id3 VARCHAR(8) NOT NULL ;
ALTER TABLE student  CHANGE  id3  id3  VARCHAR(20) ;

Для усунення стовпчиків використовують умову DROP

ALTER TABLE student  DROP id2;  

Усунення таблиць – оператор DROP TABLE

Щоб усунути існуючу таблицю її попередньо потрібно очистити. Далі використовуємо оператор DROP TABLE. Наприклад

DROP TABLE student1;

Додати коментар


Захисний код
Оновити

Меню

  •  Facebook 

Обрати мову

Хто на сайті

На сайті 159 гостей та відсутні користувачі