- •Створення таблиць бази даних
- •Теоретичні відомості
- •1.1. Проектування бази даних
- •1.2. Створення таблиць з використанням Конструктора
- •1.3.2. Керуючий запит на створення таблиці
- •1.3.3. Запит на створення таблиці з інших таблиць
- •1.3.4. Запит на додавання
- •1.3.5. Запит на видалення
- •1.3.6. Запит на оновлення
- •Лабораторна робота №2 Проектування qbe-запитів
- •Теоретичні відомості
- •2.1. Прості запити
- •2.2. Конструктор запитів
- •2.3. Обчислення в запиті
- •2.4. Параметричні запити
- •2.5. Перехресні запити
- •Контрольні запитання
- •Лабораторна робота №3 Створення запитів на вибірку з допомогою мови sql
- •Теоретичні відомості
- •3.1. Структура запиту. Умови пошуку.
- •3.2. Параметричні запити
- •3.3. Перехресні запити
- •3.4. Пошук у зв'язаних таблицях
- •3.5. Агрегація даних і форматування результатів пошуку
- •3.6. Підлеглі запити
- •3.7. Запити на об'єднання
- •Контрольні запитання
- •Лабораторна робота №4 Створення форм
- •Теоретичні відомості
- •4.1. Автоформи
- •4.2. Створення форми за допомогою «Майстра форм»
- •4.3. Створення складеної форми
- •4.4. Створення діаграми
- •4.5. Додавання елементів управління у форму
- •Контрольні запитання
- •Лабораторна робота №5 Розробка звітів
- •5.1. Робота з простими звітами
- •5.2. Створення звіту за допомогою Майстра
- •5.3. Розробка звіту в режимі Конструктора
- •Контрольні запитання
- •Лабораторна робота №6 Створення бази даних побутової техніки
- •Список літератури
1.3.3. Запит на створення таблиці з інших таблиць
Часто вимагається створити таблицю зі значеннями, вибраними з однієї або декількох таблиць. Такі дії можна виконати за допомогою запиту на створення таблиці (інструкція select...into). Інструкція в простій формі має вигляд
Інструкція створює нову таблицю з ім'ям <новаяТаблиця>. Якщо таблиця з таким ім'ям вже існує, Access запрошує підтвердження на її видалення. У нову таблицю копіюються поля з іменами <поле_1>, <поле_2>,. Стовпці нової таблиці отримують характеристики типів цих стовпців, вказаних в списку полів. Інші аргументи: <внешняяБазаДанных> - шлях до зовнішньої бази даних; <джерело> - джерело, з якого відбираються записи. Це може бути одна таблиця, декілька таблиць або запит.
У загальному вигляді запит на створення таблиці має ті ж аргументи, що і запит на вибірку. Наприклад, створимо нову таблицю ВІДМІННИКИ, що містить прізвища і шифри груп студентів, що отримали відмінні оцінки з математики:
При створенні таблиці поля в новій таблиці наслідують типи даних і розміри базових полів, ніякі інші властивості таблиць і полів не передаються. Первинний ключ в новій таблиці слід створювати в режимі Конструктора.
1.3.4. Запит на додавання
Один запис можна додати в таблицю за допомогою запиту на додавання (інструкція insert into):
Інструкція вводить в поле з ім'ям <поле_1> значення <значення_1> і т. д. Якщо опущений список полів, то значення привласнюються полям в порядку їх опису. Пропущеним в списку полям привласнюється значення null. Існує модифікація інструкції, що дозволяє вводити дані з іншої таблиці за допомогою вкладеного запиту <інструкція_вибору>. Конструкція <об'єднання таблиць> будується за допомогою оператора join (см. п. 5.4).
Наприклад, в таблицю ВІДМІННИКИ можна додати записи за допомогою інструкції
1.3.5. Запит на видалення
Інструкція delete видаляє один або декілька рядків з однієї або декількох таблиць, перерахованих в виразі from, які задовольняють виразу where
Якщо вираз where відсутній, то з таблиці будуть видалені усі рядки, але структура таблиці зберігається. Інструкцію delete можна використовувати для каскадного видалення записів з таблиць, пов'язаних відношенням "один-до-багатьох". Якщо при зв'язуванні таблиць встановлена властивість каскадного видалення, то операція видалення призводить до видалення записів з таблиці, що знаходяться на стороні відношення "багато", коли в запиті віддаляється відповідний ним запис на стороні "один". Якщо не встановлена властивість каскадного видалення, то можна видаляти рядки з боку "багато" відношення "один-до-багатьох" або з однієї з таблиць, пов'язаних відношенням "один-до-одного". Якщо у вираз from включено більш за одну таблицю, то в інструкції delete необхідно вказати таблицю <таблиця>.*, з якої віддаляються рядки. В умовах відбору можна використовувати вкладені запити, але в ньому не повинно бути посилань на таблицю, з якої віддаляються рядки. Якщо у виразі from вказано ім'я запиту, то він не повинен містити предикат distinct, вирази group by і having і оператор union.
Не можна відновити записи, видалені за допомогою запиту на видалення. Тому рекомендується спочатку проглянути результати запиту на вибірку, що використовує ті ж самі умова відбору, а потім виконати запит на видалення.
Запит на видалення видаляє записи цілком. Щоб видалити дані в конкретному полі, слід використовувати запит на оновлення (інструкція update), який замінює певні поля значенням Null.
