Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ІСТлаб.doc
Скачиваний:
20
Добавлен:
20.02.2016
Размер:
680.45 Кб
Скачать

4. Контрольні питання

4.1. Визначити призначення і основні функції мовиSQL.

4.2. Чому не можна визначити мову SQL як мову програмування?

4.3. Навести основні оператори визначення даних мовиSQL.

4.4. Навести основні ключові слова мовиSQL.

5. Навчальний матеріал

5.1. Створення таблиці із використанням мови sql

Для створення SQL-запиту потрібно у вікні бази даних“ЯСЗ”вибрати вкладку“Запросы”і натиснути кнопку “Создать”.

Відкриється вікно “Новый запрос”, в якому треба вибрати режим “Конструктор” і ОК. Коли відкриється вікно “Добавление таблицы”, потрібно відмовитись від додавання в запит таблиць натисканням кнопки “Закрыть”. Відкриється порожнє вікно Конструктора запитів.

Виконати команду меню “Вид”, “Режим SQL” або натиснути кнопку “SQL” на панелі інструментів. Відкриється вікноSQL-запиту, у якому для створення таблиці треба набрати текст за наведеною структурою.

CREATE TABLE таблиця(поле1тип[(розмір)]

[, поле2тип[(розмір)] [,...]); (8.1)

де таблиця – ім'я таблиці, що створюється;

поле1,поле2 – імена одного або декількох полів, що створюється у новій таблиці, яка повинна мати хоча б одне поле;

тип – тип даних поля у новій таблиці;

розмір– розмір поля у символах (тільки для текстових полів).

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

5.2. Створення sql-запиту на вибірку даних із однієї таблиці

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

Інструкції SELECTне змінюють дані у базі даних. Зазвичай, операторSELECTє першим словом інструкціїSQL.

Мінімальний синтаксис інструкції SELECT має вигляд:

SELECTполяFROMтаблиця (8.2)

Для вибору всіх полів таблиці можна використовувати символ зірочки (*). Наступна інструкція вибирає всі поля із таблиці “Кадр”:

SELECT*FROMКадр; (8.3)

Для створення запиту на вибір із таблиці “КАДР”працівників, які мають телефон, слід доповнити виразомWHERE.

Вираз WHEREвизначає, які записи із таблиць, що перераховані у виразіFROM, слід включити у результат виконання інструкціїSELECT.

Синтаксис

WHERE умова вибору (8.4)

де умова вибору– вираз, якому повинні задовольняти записи, які включаються в результат виконання запиту.

Якщо не задавати вираз WHERE, запит повертає усі рядки таблиці. Вираз WHERE не є обов'язковим, втім, якщо він присутній, то повинен розміщуватися за виразомFROM.

Наприклад, наступна інструкція SQLвідбирає всіх працівників із таблиці“КАДР”, які мають телефони.

SELECTПрізвище, ІПоб, Телефон

FROMКадр (8.5)

WHEREТелефон=[Телефон];

Оператор WHEREможе містити до 40 виразів, пов'язаних логічними операторами, такими якAndіOr.

5.3. Створення sql-запиту на вибірку із двох таблиць

Для того, щоб SQL-запит на вибірку із двох таблиць працював правильно, необхідно в тексті явно визначити зв'язок між таблицями за допомогою оператора об'єднання INNER JOIN. Інструкція (внутрішнє об'єднання) забезпечує включення в результуючий набір тільки дані з тих записів підлеглої таблиці, що задовольняють умові, зазначеній після службового словаON. Для зв’язку між таблицями використовують операторINNER JOIN, який об'єднує записи із двох таблиць, якщо з'єднувальні поля обох таблиць мають однакові значення.

Синтаксис оператора INNER JOIN

FROMтаблиця1INNER JOINтаблиця2

ONтаблиця1.поле1оператортаблиця2.поле2 (8.6)

де таблиця1,таблиця2 – імена таблиць, записи яких підлягають об'єднанню;

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

оператор– будь-який оператор порівняння: "=," "<," ">," "<=," ">=," "<>".

Операцію INNER JOINможна використовувати в будь-якій інструкціїFROM.

Якщо таблиці, які включаються у вираз FROMмають однойменні поля, то перед іменем такого поля слід ввести ім’я таблиці і оператор “.” (крапка).

Наприклад, якщо поле Відділє в таблицяхПрацівникиіКерівники”, то наступна інструкціяSQLвідбере полеВідділіз таблиціПрацівникиі полеКерівникіз таблиціКерівники”.

SELECTПрацівники.Відділ, Керівники.Керівник

FROMПрацівникиINNER JOINКерівники (8.7)

ONПрацівники.Відділ=Керівники.Відділ;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]