русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Приклади


Дата добавления: 2015-07-09; просмотров: 530; Нарушение авторских прав


7.1.1.1. CREATE TABLE DYSCYPL1 (KodDyscTEXT (5) PRIMARY KEY, NazvDyscTEXT (50) NOT NULL);

У режимі конструктора структуру цієї таблиці показано на рис. 7.1.

Рис. 7.1. Структура таблиці DYSCYPL1

7.1.1.2. CREATE TABLE VYKLADACH1 (KodVykl SMALLINT PRIMARY KEY, PrizvVykl TEXT (25), KodPost TEXT (2), NomKafBYTE);

 

У режимі конструктора структуру цієї таблиці показано на рис. 7.2.

Рис. 7.2. Структура таблиці VYKLADACH1

7.1.1.3. CREATE TABLE ZAKR_DYSC (KodVyklINTEGER, PrizvVykl TEXT (25), PostVyklTEXT (25), KodDyscTEXT (5), NazvDyscTEXT (50), CONSTRAINT Zakr PRIMARY KEY (KodVykl, KodDysc) );

 

У режимі конструктора структуру цієї таблиці показано на рис. 7.3.

Рис. 7.3. Структура таблиці ZAKR_DYSC

7.1.1.4. CREATE TABLE POSADA1 (KodPost TEXT (2) PRIMARY KEY, PostVyklTEXT (25), NormPostNUMBER NOT NULL);

У режимі конструктора структуру цієї таблиці показано на рис. 7.3.

 

 

Рис. 7.4. Структура таблиці POSADA1

 

7.1.2 CREATE INDEX – створити індекс

Приклади:

7.1.2.1 CREATE UNIQUE INDEX PostVykl ON POSADA1(PostVykl);

Результат показано на рис.7.5.

Не унікальний індекс можна створити командою CREATE INDEX.

 

Рис. 7.5. Результат індексації поля PostVykl таблиці POSADA1

7. 1.2.2 CREATE INDEX NmKf ON VYKLADACH(NomKaf);

Результат показано на рис.7.6. Щоб отримати більш детальну інформацію, крім тієї, що видно із структури таблиці (ім’я індексу та його склад), треба при відкритій у режимі конструктора таблиці зайти на панель інструментів Вид→Индекси.

Рис.7.6 Результат індексації поля NomKaf таблиці VYKLADACH1

7. 1.2.3 CREATE INDEX KafDysc ON ZAKR_DYSC(KodVykl, KodDysc);

Результат індексації показано на рис.7.7.

Рис.7.7 Результат індексації полів (NomKaf, KodDysc) таблиці ZAKR_DYSC



Як бачимо, таблиця ZAKR_DYSCвже має два індекси. Індекс Zakr , який складається із полів (KodVykl, KodDysc), був створений автоматично при визначенні цій сукупності полів як PRIMARY KEY при створенні таблиці (п. 7.1.1.3).

7.1.3 DROP TABLE - видалити таблицю

Приклад:

DROP TABLE DYSCYPL1;

7.1.4 DROP INDEX - видалити індекс

Приклад:

DROP INDEXKafDyscONZAKR_DYSC;

Інформація про індекси таблиці наведено на рис.7.8. Як бачимо, в ній залишився один індексZakr , який був створений автоматично при встановленні первинного ключа.

Рис.7.8 Індекси таблиці ZAKR_DYSC після видалення індексу KafDysc

7.1.5 ALTER TABLE - змінити структури таблиці

 

Приклади:

7.1.5.1. Додати 2 поля і складений індекс до таблиці ZAKR_DYSC

ALTER TABLE ZAKR_DYSC ADD KodPostTEXT (2), NomKafBYTE, NazvKaf TEXT (25),CONSTRAINT Idx1 UNIQUE (KodVykl, NazvDysc) );

 

У режимі конструктора нова структура таблиці показано на рис. 7.9, а її індекси – на рис. 7.10.

Рис.7.9. Структура таблиці ZAKR_DYSC

 

 

Рис. 7.10. Первинний ключ і складені індекси таблиціZAKR_DYSC

 

7.1.5.2. Видалимо індексIdx1із таблиці ZAKR_DYSC.

ALTER TABLE ZAKR_DYSC DROP CONSTRAINT Idx1;

Після виконання цього запиту структура індексів повернеться до стану, що приведений на рис.7.8.

 

7.1.5.3. Видалимо поле NazvKafіз таблиці ZAKR_DYSC.

ALTER TABLE ZAKR_DYSCDROP NazvKaf;

 

Примітка. Запити 7.1.5.2 і 7.1.5.3 можна було об’єднати в один запит:

 

ALTER TABLE ZAKR_DYSC DROP CONSTRAINT Idx1, COLUMN NazvKaf;

7.1.5.4 Надамо полю NormPost таблиці POSADA1 властивість необов’язкового значення (NULL). Для цього прийдеться спочатку вилучити його, а потім додати з новою властивістю, без якої буде неможливим виконання операції п.1.6.2.

1-й запит. ALTER TABLE POSADA1 DROP COLUMN NormPost;

2-й запит. ALTER TABLE POSADA1 ADD COLUMN NormPost NUMBER NULL;

 

7.1.6 INSERT –додати рядок або рядки із іншої таблиці/запиту

Приклади:

7.1.6.1 Додати до таблиці POSADA1рядок

професор

INSERT INTO POSADA1 VALUES ("01","професор",700);

 

7.1.6.2 Додати до таблиці POSADA1рядок

доцент

INSERT INTO POSADA1 (KodPost, PostVykl) VALUES ("02","доцент");

Після виконання операторів п.1.6.1 і 1.6.2 таблиця POSADA1матиме такий вміст

KodPost PostVykl NormPost
професор
доцент  

 

7.1.6.3 Додати до таблиці POSADA1рядки

старший викладач
викладач

Оскільки для кожного рядка треба створювати новий запит, створимо параметричний запит INSERT.

 

INSERT INTO POSADA1

VALUES ([KodPost - код посади],[NazvPost - назва посади],[NormPost - норма навантаження]);

 

Нижче (рис.7.11) наведено діалогове вікно одного з фрагментів роботи параметричного оператора.

 

Рис. 7.11. Фрагмент уведення даних параметричним запитом

Після уведення наведених вище рядків вміст таблиці буде таким.

KodPost PostVykl NormPost
професор
доцент  
старший викладач
викладач

7.1.6.4 Приклад команди INSERT, що має формат INSERT …SELECT. В таблицю треба вставити дані з іншої таблиці:

INSERT INTO DSCPL ( CdDs1, TtDs2, DsCrr, CdClnn, CdCf )

SELECT DISC.CdDs, DISC.TtDs, DISC.DsCr, DISC.CdCl, DISC.CdCf

FROM DISC

WHERE (DISC.CdDs="17") OR (DISC.CdDs="33") OR (DISC.CdDs="34");

 

7.1.7 UPDATE - оновити дані (поля) в таблиці

Приклади:

7.1.7.1 Увести дані про норму навантаження доцента (код ”02”)

UPDATE POSADA1 SET NormPost = 650 WHERE KodPost =”02”;

7.1.7.2 Зменшити норму для усіх посад, крім доцента, на 100 годин

UPDATE POSADA1 SET NormPost = NormPost-100WHERE KodPost <>”02”;

Після виконання наведених вище операторів вміст таблиці буде таким.

KodPost PostVykl NormPost
професор
доцент
старший викладач
викладач

Умова виконання запиту UPDATE може бути побудована з використанням полів інших таблиці, але для цього треба задіяти операції з’єднання (сполучення) таблиць, про які мова піде в п.2 (запити SELECT).

7.1.8 DELETE – видалити рядки із таблиці

 

 

Приклад:

Хай таблиця VYKLADACH має вміст, що наведено на рис.7.12 зліва. Вилучимо із таблиці викладачів кафедри №5.

DELETEFROM VYKLADACHWHERENomKaf=5;

Вміст таблиці VYKLADACH після виконання запиту показано на рис.7.12 справа.

KodVykl PrizvVykl KodPost NomKaf   KodVykl PrizvVykl KodPost NomKaf
П’ятниця М.М.   Середа І.С.
Середа І.С.   Бандур М.М.
Бандур М.М.   Мунтян Р.Д.
Мунтян Р.Д.   Сірко В.В.
Границя О.А.   Опришко Ю.Й.
Сірко В.В.   Турчак А.Д.
Опришко Ю.Й.          
Турчак А.Д.          

Рис.7.12. Вміст таблиці VYKLADACH1 до і після виконання запиту DELETE



<== предыдущая лекция | следующая лекция ==>
Лабораторна робота №7 | Підзапити з предикатом IN (Not In)


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.345 сек.