Київ 2014

Міністерство освіти і науки України

Київський національний університет технологій та дизайну

Кафедра інформаційних технологій проектування

ОРГАНІЗАЦІЯ БАЗ ДАНИХ ТА ЗНАНЬ

Завдання до лабораторних робіт

Для студентів очної форми навчання

освітньо-кваліфікаційного рівня бакалавра

напряму підготовки 6.050101 Комп’ютерні науки спеціальності Інформаційні технології проектування

 
 


Київ 2014

Завдання до лабораторних робіт по базах даных

Модуль1.

Лабораторна робота 1

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Створити базу даних, яка містить опис розміщення устаткування на підприємстві і інформацію про планованій до випуску продукцію.

База складається з таблиць (після імені таблиці перераховані поля таблиць), які приведені в списку таблиць нижче. Встановити необхідні властивості полів. Всі подальші задачі над базою даних розв'язуються в припущенні, що все устаткування одного вигляду проводить одного типа операцію і для кожної одиниці устаткування відома кількісна міра операції, яка може бути виконана в плановому періоді.

Індівідуальні особливості завдвння – назва кожного поля повинна закінчуватися ініціалами студента.

Наприклад. Студент Іванов Іван Петрович. Перше поле першої таблиці має назву

Найменування устаткуванняІІП

Список таблиць.

1. Опис устаткування.

1.1 Найменування устаткування

1.2 Модель устаткування

1.3 Зображення темплета устаткування

1.4 Тип устаткування

2. Опис типів устаткування

2.1 Код типу устаткування

2.2 Найменування типу устаткування

3. Опис розміщення устаткування в цехах.

3.1 Модель устаткування

3.2 Код цеху

3.3 Дата придбання устаткування

3.4 Початкова вартість устаткування

3.5 Балансова вартість устаткування

Інвентарний номер

Ресурс роботи в плановому періоді

4. Опис цехів.

4.1 Код цеху

4.2 Найменування цеху

4.3 Телефон

4.4 Площа цеху

Опис виробів

5.1 Артикул

5.2Наименование

5.3Стоимость одиниці

5.4План випуску (к-ть)

Опис деталей

Код деталі

Артикул виробу в яке деталь входить

К-ть деталей у виробі

Опис операцій

Найменування

Код операції

Код типу устаткування, на якому проводиться

Операції для деталей

Код деталі

Код операції

Витратна міра операції

Запитання для самоперевірки

1. Яка таблиця є реляційною

2. Яким чином визначаються домени атрибутів

3. Що визначаю ключ реляційного відношення

4. Що визначає індекс.

5. Які правила логічної цілісності визначено в базі.

6. Як визначається схема реляцийного видношення

7. Що є схемою реляційного відношення

8. Як визначається домен атрибуту.

Лабораторна робота 2

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

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

Запитання для самоперевірки

1. Що є головною таблицею

2. Що є підпорядкованою таблицею

3. Які правила логічної цілісності визначено для базі.

4. Які правила логічної цілісності базуються на посиланнях.

5. Що є схемою реляційного відношення

6. Що обмежують правила логічної цілісності посиланнь.

Лабораторна робота 3

План

6. Усвідомити завдання.

7. Виконати необхідне кодування.

8. Перевірити вірність отриманого результату.

9. Відповісти на запитання для самоперевірки.

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

Загальні відомості

SQL є непроцедурною мовою, побудованою на використовуванні обыч-

ных англійських слів (таких як SELECT, INSERT, DELETE). Він може приме-

няться як професіоналами, так і рядовими користувачами. Ця мова

формально і фактично став стандартною мовою визначення і маніпулювання реляційними базами даних. • Оператор SELECT використовується

для створення запиту і є найважливішим зі всіх існуючих операторів SQL. Він об'єднує в собі три основні операції реляційної алгебри: вибірку, проекцію і з'єднання. Прівиполненії будь-якого оператора SELECT створюється результуюча таблиця

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

• В списку вибірки SELECT указуються стовпці и/или обчислювані поля

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

• Конструкція WHERE використовується для відбору рядків даних, які повинні

бути поміщені в результуючу таблицю запиту. Відбір здійснюється

за допомогою перевірки заданих умов пошуку для кожної з рядків вказаних таблиць. Конструкція ORDER дозволяє упорядкувати рядки результуючої таблиці по значенню одного або декількох стовпців. Для кожного стовпця може використовуватися сортування

в порядку зростання або убування значень. Якщо конструкція ORDER присутня в операторі SELECT, то вона повинна бути в ньому останньою.

• В мові SQL визначено п'ять агрегуючих функцій (COUNT, SUM, AVG, MIN

і MAX), кожна з яких як параметр використовує значення всіх елементів

вказаного стовпця і повертає як результат єдине значення. В одній конструкції SELECT не допускається змішувати і агрегуючі

функції, і імена стовпців, за винятком випадку використовування конст-

рукции GROUP.

• Конструкція GROUP дозволяє включати в результуючу таблицю за-

просо підсумкову інформацію. Рядки, які мають одне і те ж значення

в одному або декількох стовпцях, можуть об'єднуватися і розглядатися як

початкова інформація для агрегуючих функцій. В цьому випадку агреги-

рующая функція сприймає кожну з груп як параметр і обчислює

єдине значення для кожної групи, що повертається як результат.

Стосовно груп конструкція HAVING виконує ті ж функції

що і конструкція WHERE по відношенню до рядків. З її допомогою можна вы-

повнити відбір груп, які будуть поміщені в результуючу таблицю

запиту. Проте, на відміну від конструкції WHERE, в конструкції HAVING мо-

гут використовуватися агрегуючі функції.

Підзапитом є завершений оператор SELECT, вбудований в

тіло іншого запиту. Вкладений запит може поміщатися в конструкцію

WHERE або HAVING зовнішнього оператора SELECT, у такому разі він називається

підзапитом. Концептуально в результаті виконання підзапиту створюється

тимчасова таблиця, вміст якої стає доступним зовнішньому за-

просу. В підзапит може бути, упроваджений інший підзапит.

Передбачено три типи підзапитів: скалярний, рядковий і табличний.

Скалярний підзапит повертає значення з одного стовпця і одного рядка;

по суті, це — єдине значення. У принципі скалярний підзапит може застосовуватися у всіх випадках, коли потрібне єдине значення.

Рядковий підзапит повертає дані з декількох стовпців, але опятьтаки у вигляді одного рядка. Рядковий підзапит може використовуватися

В всіх випадках, коли вимагається отримати один рядок, частіше всього в предикатах. Табличний підзапит повертає один або декілька

стовпців і декілька рядків. Табличний підзапит може використовуватися скрізь, де потрібна таблиця наприклад як операнд для предиката IN.

Якщо стовпці результуючої таблиці вибираються з декількох исходныхтаблиц, для останніх должт бути виконана операція з'єднання.

Іменасоєдіняємих таблиць указуються в конструкції FROM, а стовпці, по яких здійснюється з'єднання звичайно визначаються в конструкції WHERE. Стандарт ISO допускає використовування зовнішніх з'єднань. Крім того, він дозволяє

застосовувати операції над множинами (об'єднання, перетин і раз-

ность), визначувані за допомогою ключових слів UNION, INTERSECT і EXCEPT.

Крім оператора SELECT, мову SQL DML включає оператор INSERT, пред-

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

з інших таблиць за допомогою деякого підзапиту. Оператор UPDATE призначений для оновлення одного або декількох значень заданих

стовпців вказаної таблиці. Оператор DELETE дозволяє видалити із заданої таблиці одну або декілька рядків даних.

Завдання

Для бази даних завдання 1 розробити запити наступних типів:

Запрос- вибірку, формуючий список устаткування всіх

одиниць существущего на предриятии обрудования і що містить

наступні дані:

-наименование цехи

- найменування устаткування

- тип устаткування

- інвентарний номер устаткування

Запит вибірку з параметром в умові (будь-хто). Запит (наприклад) може відображати дані про устаткування, вартість якого

перевищує задану параметром

Запит вибірку з параметром в обчислюваному виразі. Запит повинен

надавати дані про індексовану вартість устаткування.

Запит вибірку, який містить інформацію про коли-

честве устаткування і сумарної його вартості в кожному подраз-

розподілі.

Запит вибірку, який містить сумарну вартість

аммортизации устаткування в цеху.

Запит, що визначає витрати всіх операцій на виконання виробничої програми.

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

Сумарна вартість аммортизации устаткування определяет-

ця як різниця між сумарними початковій і балансовою стои-

мостью.

Перехресний запит, який містить інформацію про

сумарної вартості устаткування в кожному подраз-

розподілі.

Перехресний запит, який містить інформацію про

сумарної вартості амортизації устаткування в кожному подраз-

розподілі.

Запитання для самоперевірки

  1. Назвіть два головні компоненти мови SQL. Які функції вони вы- полняют?
  2. Які достоїнства і недоліки мови SQL?
  3. Поясніть призначення кожною з конструкцій, які можуть міститись

в операторі SELECT. Які обмеження накладаються на ці конструкції?

  1. Які обмеження накладаються на використовування агрегуючих функцій

в тілі оператора SELECT? Як агрегуючими функціями обра- батываются

значення NULL?

Лабораторна робота 4

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Завдання

Розробити звіти, що відображають інформацію запитів про кількість і вартість устаткування в підрозділах і звіти для всіх,

виконаних раннє, перехресних запитів..

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

Передбачити в одному із звітів обчислення вартості амортизації устаткування для кожної одиниці устаткування, устаткування

цеху, устаткування заводу.

Запитання для самоперевірки

  1. Поясніть принципи роботи конструкції GROUP. В чому полягає раз- личие

між конструкціями WHERE і HAVING?

  1. Які відмінності між підзапитом і з'єднанням? При яких обстоя-

тельствах використовування підзапитів стає неможливим?

  1. Які операнди є доступними при розрахунках
  2. Що визначає процедурна мова
  3. Що визначає не процедурна мова

Лабораторна робота 5

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Завдання

Розробити форми (ієрархічні документи) для відображення і редагування ієрархічних наборів даних

Цех - устаткування в цеху

Виріб - деталі виробу

Ієрархічний документ відображає один запис головного набору даних (опис цеху) і всі записи деталізації (опис устаткування

в цеху).

Реалізувати за допомогою двох технологій

-

1. Вбудовані форми

2. Незалежні але зв'язані форми в яких інформація синхронізується за допомогою параметризированного фільтру форми підлеглого

набору даних

Запитання для самоперевірки

1 Що є джерелом даних для форми

2 Що є звязаним єлементом керування. Які можливості вони мають.

3 Які відмінності між підзапитом і з'єднанням? При яких обстоя-

тельствах використовування підзапитів стає неможливим?

4. Які операнди є доступними при розрахунках

5. Що визначає процедурна мова

6. Що визначає не процедурна мова

Лабораторна робота 6

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Завдання

Об'єднати всі створені в процесі виконання попередніх завдань елементи в єдину інформаційну систему. Для цього розробити стартову форму і систему макросів, яка дозволяє управляти виконанням інформаційної системи вивантажуючи і завантажуючи необхідні форми і звіти в пам'ять. Структура системи (організація взаємодії форм і звітів) повинна дозволяти виконати будь-яку необхідну операцію - додавання, зміна і видалення будь-якого запису.

Модуль 2

Кожне завдання будується на підставі однієї таблиці додатку 3 (варіанти таблиць для умовного економічного розрахунку). Кожна таблиця містить дані для одного розрахунку. Всі завдання сформульовані в припущенні, що символи (у тому числі і графічні),

створюючі образ таблиці, діляться на дві групи - оформлення і змінна частина. Група оформлення - шапка і графічні примітиви, змінна частина - всі дані, що використовуються при розрахунку. В завданні фігурує термін - графічний образ таблиці - це її впізнанне зображення оригінальне для кожного варіанту завдання. Завдання формулюється в припущенні, що цей графічний

образ може бути запрограмований за допомогою різних засобів (елементів управління -Textbox, або DataGrid) але все одно залишається впізнанним. В завданні вимагається, щоб цей графічний образ створювався різними методами.

Лабораторна робота 7

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Необхідно.

1.Створити за допомогою ACCESS базу даних і реляційну таблицю, кожний рядок якої повністю відповідає даним змінної частини всієї таблиці завдання - один рядок повністю зберігає дані необхідні для одного екземпляра розрахунку. Наприклад, якщо в розрахунковій таблиці 2 рядки і 2 стовпці, які містять інформацію, то в реляційній таблиці Access повинне бути 4 поля

Таблиця завдання.

Категория Численность работников Фонд зарплаты Средняя зарплата
Рабочие-сдельщики *    
Рабочие-повременщики *    

Реляционная таблица

.. .. .. ..
       
       

В реляционной таблице вычисляемые поля не хранятся. Реляционная таблица должна содержать информацию для наполнения нескольких таблиц задания.

2.Промоделировать образ таблицы задания с помощью элементов управления TextВох. Используя элемент управления типа ADODC отобразить информацию таблицы БД в элементах управления типа TextВох, или Listbox используя объект Recorset порожденный ADODC,. Это изображение будем называть графическим образом 1 задания. Графический образ в каждый момент времени должен отображать одну запись базы данных. Информация в форме должна соответствовать внешнему виду таблицы, приведенной в задании. Необходимо предусмотреть элементы управления для навигации по записям реляционной таблицы (возможность поочередного просмотра записей)

3. Предусмотреть возможность представления данных в упорядоченном по заданному критерию виде (для этого в таблицу добавить поле – номер набора данных для расчета, например), отображения данных, удовлетворяющих заданному условию (условия также придумать самостоятельно – это также может быть дата, связанная с введенным набором данных либо все тот же номер расчета).

Примеры кодирования

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

AxAdodc1.Refresh()

TextBox1.Text = AxAdodc1.Recordset.Fields(0).Value

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

AxAdodc1.Recordset.Fields(0).Value = "fffff"

AxAdodc1.Recordset.MoveNext()

TextBox1.Text = AxAdodc1.Recordset.Fields(0).Value

End Sub

Запитання для самоперевірки

  1. Що є джерелом даних для форми
  2. Що є звязаним єлементом керування. Які можливості вони мають.
  3. Що є курсором.
  4. Як курсор пов'язаний з рекордсетом.
  5. Які операнди є доступними при розрахунках
  6. Що визначає процедурна мова
  7. Що визначає не процедурна мова

Лабораторна робота 8

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Повторить функциональность задания 1 с помощью объектов доступа к данным ADO.

Пример кодирования

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim con As New ADODB.Connection()

con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\2012-program-Dip\Бази даних та знань\proect\WindowsApplication2\WindowsApplication2\BIBLIO.MDB"

Dim com As New ADODB.Command()

con.Open()

com.ActiveConnection = con

com.CommandText = "select * from [Authors]"

Dim mr As New ADODB.Recordset

mr = com.Execute

TextBox1.Text = mr.Fields(0).Value

ListBox1.Items.Add(TextBox1.Text)

Dim myst As String

mr.MoveNext()

myst = mr.Fields(2).Value

ListBox1.Items.Add(myst)

End Sub

Запитання для самоперевірки

  1. Що є джерелом даних для форми
  2. Що є звязаним єлементом керування. Які можливості вони мають.
  3. Що є курсором.
  4. Як курсор пов'язаний з рекордсетом.
  5. Які функції об’єкта Connection.
  6. Які функції об’єкта Command.
  7. Які стани можливі для об’єкта Connection

Лабораторна робота 9

План

1. Усвідомити завдання.

2. Виконати необхідне кодування.

3. Перевірити вірність отриманого результату.

4. Відповісти на запитання для самоперевірки.

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

Повторить функциональность задания 1 с помощью объектов доступа к данным ADO NET.

Аналогичный заданию лаб. 8 пример кодирования для ADO NET

private void button4_Click(object sender, EventArgs e)

{

System.Data.OleDb.OleDbConnection ncon=new System.Data.OleDb.OleDbConnection();

System.Data.OleDb.OleDbCommand ncom = new System.Data.OleDb.OleDbCommand();

string mystr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\2012-program-Dip\\Бази даних та знань\\proect\\adonet_cc#\\WindowsFormsApplication1\\BIBLIO.MDB";

ncon.ConnectionString = mystr;

ncon.Open();

ncom.CommandText = "SELECT Authors.* FROM Authors";

ncom.Connection = ncon;

System.Data.OleDb.OleDbDataReader reader = ncom.ExecuteReader();

while (reader.Read())

{

Console.WriteLine(reader[0].ToString());

listBox1.Items.Add(reader[1].ToString());

}

reader.Close();

}

Запитання для самоперевірки

  1. Що є джерелом даних для форми
  2. Що є звязаним єлементом керування. Які можливості вони мають.
  3. Що є курсором.
  4. Як курсор пов'язаний з рекордсетом.
  5. Які функції об’єкта Connection.
  6. Які функції об’єкта Command.
  7. Які стани можливі для об’єкта Connection

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: