
- •Крещенко л.Ф. Мова sql
- •Навчальна програма дисципліни«Мова sql»
- •Методичні рекомендації до вивчення дисципліни Тема 1. Основи роботи з Microsoft sql| Server| 2005
- •1. Основні відомості про|із|sql|Server|2005 та принципи його роботи
- •Що таке sql Server 2005
- •Бази даних
- •Реляційні бази даних
- •2. Використання sql|Server|Management|Studio|
- •Створення|створіння|запитів
- •Тема 2. Створення і керування базою даних sql Server
- •1. Створення бази даних у середовищі ms sql Server 2005
- •Методи створення бази даних sql Server
- •Оператор create database
- •Керування базою даних sql Server
- •Видалення бази даних sql Server
- •Приклад створення і керування базою даних
- •Перегляд бази даних BookShopDb
- •Видалення бази даних за допомогою оператора drop database
- •2. Створення таблиць у базі даних та накладання обмежень
- •Визначення типів даних
- •Системні типи даних
- •Користувальницькі типи даних
- •Цілісність даних
- •Цілісність, обумовлена користувачем
- •Практична реалізація створення таблиць та забезпечення цілісності даних Перегляд існуючих таблиць, стовпців і їхніх типів даних
- •Створення таблиць і керування ними
- •Створення таблиць у базі даних sql Server
- •Реалізація обмежень, що забезпечують цілісність
- •Загальні відомості про обмеження, що забезпечують цілісність
- •Визначення можливості зберігання порожніх значень (null)
- •Визначення значень за замовчуванням (default)
- •Автоматична нумерація й стовпці з ідентифікатором (identity)
- •Створення стовпців з ідентифікатором
- •Властивість identity
- •Обмеження primary key
- •Створення обмежень primary key
- •Обмеження unique
- •Створення обмежень unique
- •Обмеження foreign key
- •Створення обмежень foreign key
- •Обмеження check
- •Створення обмежень check
- •Модифікація таблиць у базі даних sql Server
- •Видалення таблиці з бази даних sql Server
- •Створення таблиці Authors у базі BookShopDb
- •Створення таблиць BookAuthors і BookCondition у базі даних BookShopDb
- •Тема 3. Синтаксичні елементи мови Transact-sql
- •1.Ідентифікатори
- •Звичайні ідентифікатори
- •Ідентифікатори з обмежниками
- •2. Функції та інші конструкції мови
- •Убудовані функції
- •Функції одержання набору рядків
- •Агрегатні функції
- •Скалярні функції
- •Користувальницькі функції
- •Типи користувальницьких функцій
- •Детермінованість функцій
- •3. Типи даних та фирази
- •Коментарі
- •Приклади. Створення сценаріїв за допомогою синтаксичних елементів мови Transact-sql
- •Сценарії Trarisact-sql
- •Тема 4 Вибірка даних з бази даних sql Server
- •1. Основи оператора select
- •Конструкція select
- •Використання ключових слів у списку вибору
- •Ключове слово distinct
- •Ключове слово top n
- •Ключове слово as
- •Типи інформації в списку вибору
- •Конструкція into
- •Конструкція from
- •Конструкції where, group by і having
- •Конструкція group by
- •Обробка конструкцій where, group by і having
- •Конструкція order by
- •Витяг всіх даних з таблиці Titles
- •Одержання даних з певних стовпців таблиці Titles
- •Завдання умови, якій повинен відповідати результуючий набір
- •Угруповання даних у результуючому наборі
- •2.Витяг даних за допомогою з'єднань
- •Внутрішні з'єднання
- •Зовнішні з'єднання
- •Використання лівих зовнішніх з'єднань
- •Використання правих зовнішніх з'єднань
- •Використання повних зовнішніх з'єднань
- •3.Визначення підзапитів усередині операторів select
- •Типи підзапитів
- •Підзапити із ключовими словами in або not in
- •Підзапити з операторами порівняння
- •Підзапити із ключовими словами exists і not exists
- •Узагальнення даних
- •Узагальнення даних за допомогою оператора cube
- •Узагальнення даних за допомогою оператора rollup
- •Приклади
- •Одержання даних за допомогою повного зовнішнього з'єднання
- •Тема 5. Модифікація даних у базах даних sql Server
- •1. Додавання даних у бд sql Server
- •Додавання даних за допомогою оператора insert
- •Insert [into] таблиця_або_відображення
- •Додавання даних за допомогою оператора insert...Values
- •Додавання даних за допомогою підзапиту select
- •Додавання даних за допомогою оператора select...Into
- •Додавання у вставлені рядки даних типу ntext, text і image
- •Додавання даних за допомогою операцій масового копіювання
- •2. Модифікація даних у бд sql Server
- •Модифікація даних за допомогою оператора update
- •Модифікація даних за допомогою конструкції set
- •Модифікація даних за допомогою конструкції where
- •Модифікація даних за допомогою конструкції from
- •Модифікація даних за допомогою api і курсорів
- •Модифікація даних типу ntext, text і image
- •3. Видалення даних із бд sql Server
- •Видалення даних оператором delete
- •Видалення даних за допомогою api і курсорів
- •Видалення даних за допомогою оператора truncate table
- •Практичні приклади модифікації даних у бд sql Server
- •Тема 6. Збережені процедури
- •1. Основні відомості про збережені процедури
- •Продуктивність
- •Можливості програмування
- •Безпека
- •2. Операції зі збереженими процедурами
- •Збереження процедури
- •Методи створення збережених процедур
- •Передача контексту збереженій процедурі
- •Виконання збереженої процедури
- •Виклик збереженої процедури
- •Визначення параметрів і їхніх значень
- •Модифікація збереженої процедури
- •Видалення збереженої процедури
- •Приклади роботи зі збереженими процедурами
- •Приклади програмування збережених процедур
- •Тема 7. Створення|створіння|тригерів|трігерів|і керування ними
- •1. Створення|створіння|тригерів|трігерів|за допомогою мови|язика|transact-sql|
- •Конструкція on|
- •Конструкції for|, after|і instead|of|
- •Конструкція as|
- •Управління тригерами|трігерами|
- •Зміна і перейменування тригерів
- •Перегляд|проглядати|, видалення|віддалення|і відключення тригерів|трігерів|
- •2. Програмування тригерів|трігерів| Псевдотаблиці Inserted|і Deleted|
- •План практичних занять Практичні заняття 1,2 (4 години)
- •Перелік завдань для модуля
- •Індивідуальні завдання для самостійної роботи студентів
- •Порядок і критерії оцінювання знань студентів
- •Перелік питань для підготовки до поточного модульного контролю
- •Розподіл балів, що отримають студенти за результатами вивчення дисципліни «Мова sql»
- •Система нарахування балів за видами навчальної роботи
- •Список рекомендованої літератури
План практичних занять Практичні заняття 1,2 (4 години)
Тема: Основи роботи з Microsoft SQL| Server| 2005.
Мета: Відпрацювати операції роботи з середовищем SQL| Server| Management| Studio, використовуючи функції графічного інтерфейсу. Практично відпрацювати операції створення запитів у редакторі запитів.
Практичні заняття 3,4 (4 години)
Тема: Створення і керування базою даних SQL Server.
Мета: Відпрацювати методи створення бази даних SQL Server. Вивчити та відпрацювати оператори керування базою даних, операторів отримання інформацію про створену базу даних та операторів створення таблиць бази даних.
Практичні заняття 5,6 (4 години)
Тема:Синтаксичні елементи мови Transact-SQL.
Мета: Відпрацювати та засвоїти синтаксичні елементи мови Transact-SQL: ідентифікатори, функції та інші конструкції мови. Засвоїти типи даних та елементи мови керування ходом виконання, які використовуються в середовищі SQL Server. Вивчити функції коментарів та правила їх використання.
Практичні заняття 7,8,9 (6 годин)
Тема:Вибірка даних з бази даних SQL Server.
Мета: Відпрацювати та засвоїти синтаксис оператора вибірки, всі ключові елементи та конструкції оператора вибірки. Засвоїти умови з’єднання у операторі вибірки та їх різновиди. Засвоїти використання підзапитів у середині оператора Select.
Практичні заняття 10,11 (4 години)
Тема:Модифікація даних у базах даних SQL Server..
Мета: Відпрацювати та засвоїти методологію внесення змін у базу даних: додавання, редагування та видалення.
Практичні заняття 12,13 (4 години)
Тема:Збережені процедури.
Мета: Відпрацювати та засвоїти операції зі збереженими процедурами. Вивчити методи створення збережених процедур за допомогою середовища та операорів мови Transact-SQL. Засвоїти оператори виклику збережених процедур з використанням вхідних і вихідних параметрів.
Практичні заняття 14,15 (4 години)
Тема:Створення|створіння| тригерів|трігерів| і керування ними.
Мета: Відпрацювати та засвоїти операції з тригерами. Вивчити методи створення тригерів за допомогою середовища та операорів мови Transact-SQL.
Перелік завдань для модуля
1. Пропонується система відношень, які зв’язані між собою:
Продавець(Код продавця, Прізвище, Паспорт, Дата народження, Адреса).
Покупець (Код покупця, Прізвище, Паспорт, Дата народження, Адреса).
Облік_Продажу(Дата продажу, Код продавця, Код покупця, Товар, Кількість, Вартість).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного продавцята включити наступні атрибути:Дата продажу, Продавець.прізвище, Покупець.Прізвище, Вартість
2. Пропонується система відношень, які зв’язані між собою:
Касир(Код касира, Прізвище, Паспорт, Дата народження, Адреса).
Пасажир (Код пасажиру, Прізвище, Паспорт, Дата народження, Адреса).
Облік_Білетів(Дата рейсу, Код касира, Код пасажиру, Пункт призначення, Відстань).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного пасажирата включити наступні атрибути:Дата продажу, Касир.прізвище, Клієнт.Прізвище, Відстань.
3. Пропонується система відношень, які зв’язані між собою:
Автомобілі(Код авто, Марка, Дата виготовлення, Державний номер, Кольор).
Водії (Код водія, Прізвище, Паспорт, Дата народження, Адреса).
Облік_Рейсів(Дата рейсу, Код водія, Код авто, Вантаж, Кількість, Відстань).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного водіята включити наступні атрибути:Дата рейсу, Водій.прізвище, Авто.Марка, Відстань.
4. Пропонується система відношень, які зв’язані між собою:
Учень(Код учня, Прізвище, Дата народження, Адреса).
Дисципліна (Код дисципліни, Назва дисципліни, Прізвище вчителя).
Облік_Успішності(Дата екзамену, Код учня, Код дисципліни, Оцінка, Вчитель).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного учнята включити наступні атрибути:Дата екзамену, Учень.прізвище, Назва дисципліни, Оцінка.
5. Пропонується система відношень, які зв’язані між собою:
Робітник(Код робітника, Прізвище, Паспорт, Дата народження, Адреса).
Підрозділ (Код підрозділу, Назва, Керівник).
Облік_кадрів(Дата призначення, Код робітника, Код підрозділу, Місячна ставка).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного підрозділута включити наступні атрибути:Дата призначення, Робітник.прізвище, Підрозділ.Назва, Ставка.
6. Пропонується система відношень, які зв’язані між собою:
Літаки(Код літака, Марка, Дата виготовлення, Номер рейса, Номер борта).
Пілоти (Код пілота, Прізвище, Паспорт, Дата народження, Адреса).
Облік_Рейсів(Дата рейсу, Код пілота, Код літака, Призначення, Відстань).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного літаката включити наступні атрибути:Дата рейсу, Пілот.прізвище, Літак.Марка, Відстань.
7. Пропонується система відношень, які зв’язані між собою:
Провізор(Код провізора, Прізвище, Дата народження, Адреса).
Ліки (Код ліки, Назва ліки, Показання, Ціна).
Облік_Продажу(Дата продажу, Код ліки, Код провізора, Хворий, Використання).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного провізората включити наступні атрибути:Дата продажу, Назва ліки, Хворий, Показання.
8. Пропонується система відношень, які зв’язані між собою:
Склад(Код складу, Назва, ЗавСкладом, Адреса, ).
Товар (Код товару, Назва, Одиниця виміру, Категорія, Ціна).
Облік_замовлень(Дата замовлення, Код складу, Код товару, Кількість, Загальна вартість).
Використовуючи команду SelectмовиSQLнаписати команду вибірки з наведених таблиць длявказаного товарута включити наступні атрибути:Дата замовлення, ЗавСкладом, Товар.Назва, Загальна ціна.
Питання для самостійного вивчення курсу
Назвіть перший етап реалізації фізичної бази даних.
Які фактори варто врахувати перед створенням бази даних?
З яких двох етапів складається процес реалізації нової бази даних SQL Server?
Які методи застосовуються для створення об'єкта SQL Server база даних?
Що таке тип даних?
Назвіть чотири атрибути об'єкта, які визначаються його типом даних.
Які дев'ять категорій типів даних підтримує SQL Server?
Що таке користувальницькі типи даних?
Які відомості повинні входити в мінімальне визначення таблиці?
Що визначає можливість уведення в стовпець порожніх значень, задана у визначенні таблиці?
Як визначити значення за замовчуванням для стовпця?
Яка властивість із визначення стовпця в операторі CREATE TABLE дозволяє автоматично генерувати номер ідентифікатора для кожного нового рядка, що додає до таблиці?
Які властивості бази даних SQL Server використовуються для забезпечення цілісності даних?
У чому розходження між визначеннями DEFAULT і NOT NULL?
Назвіть чотири типи цілісності даних, які підтримує SQL Server.
У чому розходження між посилальною й доменною цілісністю?
Який тип цілісності зберігає зв'язки, які існують між таблицями, при видаленні або уведенні записів?
Які типи обмежень підтримує SQL Server?
Скільки визначень обмеження PRIMARY KEY може входити у визначення таблиці?
Коли замість обмеження PRIMARY KEY варто використовувати обмеження UNIQUE?
Для чого SQL Server перевіряє існуючі дані, коли обмеження PRIMARY KEY додається до існуючого стовпця (або стовпців)?
Що таке обмеження FOREIGN KEY і як його створити?
Як обмеження CHECK визначає припустимі значення?
У якому з вікон SQL ServerManagementStudioможна вводити й виконувати оператори Transact-SQL?
Як виконувати оператори Transact-SQL і сценарії за допомогою редактору запитів?
Який інструмент редактору запитів дає можливість управляти збереженими процедурами й відслідковувати їхнє виконання?
Що таке Transact-SQL?
Назвіть три типи операторів Transact-SQL, які підтримує SQL Server.
До якого типу операторів Transact-SQL відноситься оператор CREATE TABLE?
Який елемент Transact-SQL є об'єктом, що у пакетах і сценаріях застосовується для зберігання деякого значення?
Якими операторами Transact-SQL створюються, модифікуються й видаляються користувальницькі функції?
Назвіть елементи мови керування ходом виконання.
Назвіть окремі методи виконання операторів Transact-SQL, які підтримує SQL Server 2005.
У чому розходження між пакетами, збереженими процедурами й тригерами?
Для яких типів стовпців дозволяється не задавати значення в операторі INSERT
Які методи дозволяють модифікувати дані в БД SQL Server?
Перелічить основні конструкції оператора UPDATE.
Який оператор варто використати для видалення всіх рядків з таблиці?
Чому складні збережені процедури при повторному запуску працюють, як правило, швидше, ніж при першому запуску?
Які засоби захисту забезпечують збережені процедури?
Яка функція дозволяє перевірити властивості збереженої процедури й інших об'єктів SQL Server?
Чому модифікація збереженої процедури за допомогою ключових слів ALTER PROCEDURE більше ефективна, ніж видалення процедури з її повторним створенням?
База даних Northwind установлена як поточна, і в ній створена збережена процедура #Procedure01. Однак при перевірці бази даних Northwind ця процедура не була знайдена. Проте процедуру вдалося запустити, якщо поточною базою даних є Northwind. Чому збережена процедура запускається, але не виявляється в базі даних Northwind?
Які три функції виконує оператор RETURN у збережених процедурах?