Організація баз даних і знань 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Організація баз даних і знань



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

Методичні вказівки

До практичних занять

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

6.050103 “Програмна інженерія”

усіх форм навчання

 

 

 

 


Організація баз даних і знань. Методичні вказівки до практичних занять для студентів напрямку підготовки 6.050103 “Програмна інженерія” усіх форм навчання /Уклад.: Корнієнко С.К., Качан О.І. –Запоріжжя: ЗНТУ, 2009. –30 с.

 

 

Укладачі: С.К. Корнієнко, доцент, к.т.н.,

О.І. Качан, асистент

 

Рецензент: В.П. Пінчук, доцент, к.ф.-м.н.

 

 

Відповідальний

за випуск: А.В. Притула, доцент, к.т.н.

 

Затверджено

на засіданні кафедри

"Програмні засоби"

 

Протокол № 1 від 28.08.08 р.

 


ЗМІСТ

Вступ. 4

1 Життєвий цикл інформаційної системи. 5

2 Концептуальне проектування. 8

2.1 Аналіз концептуальних вимог та інформаційних потреб. 8

2.2 Виявлення інформаційних об'єктів та зв'язків між ними. 9

2.3 Побудова концептуальної моделі 10

3 Логічне проектування. 13

3.1 Вибір СКБД.. 13

3.2 Відображення концептуальної схеми на логічну схему БД.. 15

4 Основи Мови структурованих запитів SQL. 19

4.1 Типи даних. 19

4.2 Класифікація команд SQL. 22

4.3 Створення таблиць. 23

4.4 Проектування простих запитів на вибірку. 27

Література. 28

Додаток А Словник основних термінів. 29

 


Вступ

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

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

Методичні вказівки містять основні відомості та практичні рекомендації з концептуального і даталогічного проектування інформаційних систем, а також розрахунково-графічне завдання та рекомендації з їх виконання.

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


Концептуальне проектування

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

Аналіз предметної області доцільно розбити на три фази:

– аналіз концептуальних вимог та інформаційних потреб;

– виявлення інформаційних об'єктів та зв'язків між ними;

– побудова концептуальної моделі ПО і проектування концептуальної схеми БД.

 

Логічне проектування

Основним завданням логічного проектування є розробка логічної схеми, орієнтованої на обрану СКБД. Процес логічного проектування вміщує наступні етапи:

1) Вибір конкретної СКБД.

2) Відображення концептуальної схеми на логічну схему.

3) Вибір джерел.

4) Опис мови запитань.

 

Вибір СКБД

При виборі СКБД, яка реалізує конкретну БД, виділяють два підходи до її оцінки. Перший підхід пов'язаний з поглядом на кінцеву тему, а другий - технічний, пов'язаний з продуктивністю системи. З урахуванням цієї системи розглянемо сім груп параметрів для характеристики і наступного вибору СКБД. Дані параметри, не претендуючи на вичерпну повноту, дають достатньо повну картину про можливості СКБД.

 

Загальні характеристики:

– тип комп'ютеру;

– максимальна кількість записів у файлу;

– максимальний об'єм файлу;

– максимальна кількість копій у запису;

– максимальна кількість символів на запис;

– максимальна кількість індексів на файл;

– максимальна кількість таблиць в операції з'єднання;

– максимальна кількість файлів, доступних для однієї команди;

– максимальна кількість одночасно відкритих файлів;

– максимальна кількість файлів у БД;

– максимальна кількість записів у БД;

– максимальна кількість змінних;

– максимальна кількість символів в одному полі;

– імпорт - експорт даних;

– тип внутрішньої моделі даних;

– фірма – виробник;

– версія.

Управління файлами та пошук:

* тип зв'язку;

* модифікація декількох файлів;

* двонаправлене з'єднання таблиць;

* мова маніпулювання даними;

* тип пошуку.

Засоби підтримки додатків:

* каталог даних;

* генератор додатків;

* процедурна мова;

* підпрограми;

* макроси;

* налагоджувач;

* система підтримки виконання;

* шифровка програм та даних;

* розмежування доступу;

* графіка;

* графіка кольорова;

* текстовий редактор;

* статистика.

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

* управління за допомогою команд;

* управління за допомогою меню;

* перевірка цілісності за таблицею;

* перевірка унікальності ключа;

* перевірка за датою;

* незалежність даних.


Звіти:

* звіти за декількома файлами;

* зберігання форматів звіту;

* видача звіту на екран;

* видача звіту на магнітний носій;

* поля, що обчислюються;

* перевизначення формату дати;

* генератор звітів;

* підсумкові поля;

* максимальна ширина звіту;

* звіт в матричній формі.

Операційне середовище:

* тип операційної системи;

* об'єм необхідної оперативної пам'яті;

* мова системи.

Додатки:

* наявність варіанту мережі;

* вартість.

 

Відношення СКЛАД

№ складу Адреса Телефон Профіль
       

 

Одна таблиця займає 60 байт. Усього складів 40, у підсумку 60*40=2400 байт.

 

Відношення ВИРОБНИК

Найменування Адреса Телефон Профіль
         

 

Одна таблиця займає 70 байт. Усього підприємств – виробників 15, у підсумку 70*15=1050 байт.

Відношення ЗАЯВА

№ заяви Дата Найменування виробу
     

 

Одна таблиця займає 41 байт. Усього заяв 1000, у підсумку 41*1000=41000 байт.

 

Таким чином, у першому наближенні на зберігання БД необхідно 16000+24000+2400+1050+41000=84450 байт.

Після визначення всіх відношень необхідно зробити нормалізацію бази даних, яка міститься в декомпозиції вихідних відношень БД на інші, більш дрібні та прості відношення.

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

 

 

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

1. На які етапи поділяється процес логічного проектування бази даних?

2. Якими розуміннями слід керуватися при виборі СКБД?

3. Які моделі даних існують?

4. Що називається об'єктним відношенням?

5. Що називається зв'язковим відношенням?

6. Яким чином виробляється відображення концептуальної моделі на реляційну модель даних?

 


Типи даних

SQL підтримує основні типи даних, які наведені в таблиці 4.1.

 

Таблиця 4.1 –Типи даних

Тип даних Розмір Опис
     
BINARY 1 байт на знак У полі цього типу можуть зберігатися дані будь-якого типу Дані відобража­ються в тому ж вигляді, у якому вони вводяться в це поле.
BIT 1 байт Значення «Так» (Yes) і «Ні» (No), а також поля, що містять одне з двох можливих значень.
TINYINT 1 байт Ціле значення від 0 до 255.
MONEY 8 байтів Грошовий
DATETIME 8 байтів Дата або час; припустимий будь-який рік від 100 до 9999.
UNIQUEIDENTIFIER 128 бітів Унікальний ідентифікатор, який використовується при викликах вилучених процедур.
REAL 4 байти Число з крапкою, що плаває, та одинарною точністю
FLOAT 8 байтів Число з крапкою, що плаває, та подвійною точністю
SMALLINT 2 байти Коротке ціле від –32 768 до 32 767 (див. «Примітки»).
INTEGER 4 байти Довге ціле від –2 147 483 648 до 2 147 483 647.
DECIMAL 17 байтів Тип даних для збереження точних числових значень від 1028 - 1 до 1028 - 1.

Продовження таблиці 4.1

     
TEXT 2 байти на знак Від 0 до 2,14 Гбайт (поле МЕМО)
IMAGE Не обмежено Від 0 до 2,14 Гбайт. Використову­ється для об'єктів OLE.
CHARACTER 2 байти на знак Від 0 до 255 знаків.

 

Окремі версії мови SQL мають певні відмінності. У таблиці 4.2 наведені типи даних ANSI SQL, еквівалентні ним типи даних мови SQL ядра бази даних Microsoft Jet і припустимі синоніми. Крім того, представлені еквівалентні типи даних Microsoft® SQL Server™.


Таблиця 4.2 – Типи даних окремих версій SQL

Типи даних ANSI SQL Типи даних SQL Microsoft Jet Синонім Типи даних Microsoft SQL Server
BIT, BIT VARYING BINARY   VARBINARY, BINARY VARYING BIT VARYING BINARY, VARBINARY
Не підтримується BIT   BOOLEAN, LOGICAL, LOGICAL1, YESNO BIT
Не підтримується TINYINT INTEGER1, BYTE TINYINT
Не підтримується COUNTER AUTOINCREMENT Не підтримується
Не підтримується MONEY CURRENCY MONEY
DATE, TIME, TIMESTAMP DATETIME DATE, TIME DATETIME
Не підтримується UNIQUEIDENTIFIER GUID UNIQUEIDENTIFIER
DECIMAL DECIMAL NUMERIC, DEC DECIMAL
REAL REAL SINGLE, FLOAT4, IEEESINGLE REAL
DOUBLE PRECISION, FLOAT FLOAT DOUBLE, FLOAT8, IEEEDOUBLE, NUMBER FLOAT
SMALLINT SMALLINT SHORT, INTEGER2 SMALLINT
INTEGER INTEGER LONG, INT, INTEGER4 INTEGER
INTERVAL Не підтримується   Не підтримується
Не підтримується IMAGE LONGBINARY, GENERAL, OLEOBJECT IMAGE
Не підтримується TEXT LONGTEXT, LONGCHAR, MEMO, NOTE, NTEXT TEXT
CHARACTER, CHARACTER VARYING, NATIONAL CHARACTER, NATIONAL CHARACTER VARYING CHAR TEXT(n), ALPHANUMERIC, CHARACTER, STRING, VARCHAR, CHARACTER VARYING, NCHAR, NATIONAL CHARACTER, NATIONAL CHAR, NATIONAL CHARACTER VARYING, NATIONAL CHAR VARYING CHAR, VARCHAR, NCHAR, NVARCHAR

 


Класифікація команд SQL

Команди SQL використовуються для виконання різноманітних дій над реляційними БД. Для зручності роботи вони розділяються на наступні групи (табл.. 4.3):

– команди визначення даних (Data Definition Commands);

– команди маніпуляції даними (Data Manipulation Commands);

– команди вибірки даних (Data Query Commands);

– команди керування транзакціями (Transaction Control Commands);

– команди керування даними (Data Control Commands)

Таблиця 4.3 – Команди мови SQL

 

Команда Призначення
   
Команди визначення даних
alter table Змінює структуру таблиці
create index Створює індекс
create table Створює таблицю
create view Створює подання
Drop Вилучає таблицю, індекс, подання
Команди маніпуляції даними
Delete Видаляє запису таблиці
Insert Добавляє запису в таблицю
Update Змінює дані таблиці
Команда вибірки даних
Select  
Команди керування транзакціями
commit Робить зміни, проведені з початку транзакції, постійними
rollback Відкочує всі проведені зміни до крапки зберігання або до початку транзакції
savepoint Встановлює контрольну крапку, до котрого згодом можна буде виконати відкат

Продовження таблиці 4.3

 

   
Команди керування даними
check database Перевіряє цілісність бази даних
grant Надає привілеї
revoke Скасовує надані раніше привілеї

 

Створення таблиць

Основний формат

Щоб створити таблицю треба зробити, щонайменше, наступне.

– задати ім'я таблиці;

– задати імена складових її стовпчиків;

– визначити тип даних для кожного стовпчика;

– визначити (або використовувати по умовчанню) нульовий статус для кожного стовпчика - припускається або забороняється використання в стовпчику нульових значень.

 

CREATE TABLE ім'я_таблиці (ім'я_стовпчика тип_даних [NULL | NOT NULL] [, ім'я_стовпчика тип_даних [NULL | NOT NULL] ] …);  

 

Статус стовпчика NOT NULL означає обов'язкове заповнення відповідного стовпчика. Статус NULL - означає, що значення стовпчика можуть бути не визначені Наприклад,

 

create table customs (name varchar(25) not null, adress varchar(35) not null, phone char(8) null);

 

Типи даних char і varchar відрізняються тим, що для даних типу char виділяється дисковий простір фіксованої довжини незалежно від реальної потреби, а для даних типу varchar дисковий простір виділяється по мірі необхідності в рамках зазначеного розміру, що дозволяє заощаджувати дисковий простір.

Create table товар

(код char(6) not null primary key

check (код like '[A-Я] [A-Я] [0-9] [0-9][0-9] [0-9]'),

Назва varchar(80) not null,

Тип char(12)

default "невизначений" null

check (тип in ("економіка", "психологія",

"програмування", "невизначений")),

Ціна money null,

Кількість int null)

 

Ключове слово LIKE означає завдання шаблона значень, а

IN – список можливих значень.

 


Create table покупці

(ном integer not null primary key,

Прізвище char(15),

ном_прод integer,

foreign key (ном_прод) references продавці (ном_прод));

Зовнішній ключ, як і первинний, може бути визначений на будь-якій кількості полів, які разом розглядаються як єдине ціле (складовий ключ). Зовнішній і батьківський ключі повинні бути визначені на однаковій множині полів (за кількістю, типам і порядку слідування):

 

FOREIGN KEY (список стовпчиків) REFERENCES ім'я таблиці (список стовпчиків)

 

Таким чином, основна ідея посилальної цілісності полягає в тому, що всі значення зовнішніх ключів відсилають до визначеного рядка батьківського ключа. Як тільки значення розміщається в зовнішньому ключі, батьківський ключ перевіряє для того, щоб переконатися в тому, що таке значення в ньому є присутнім; у противному випадку команда відхиляється. Батьківський ключ повинний мати обмеження PRIMARY KEY або UNIQUE для гарантії того, що значення не подане більш ніж один раз.


Select distinct прізвище

from продавці;

 

Якщо оператор SELECT витягає декілька полів, то DISTINCT виключає рядки, в яких всі вибрані поля ідентичні, тобто він діє на всю строку, а не на окремі поля.

Альтернативою DISTINCT є ключове слово ALL, що має проти­лежне значення, тобто дозволяє виведення повторюваних рядків у запиті. По умовчанню використовується ALL.

При роботі з декількома таблицями, що містять однойменні поля, перед іменами стовпчиків треба задавати імена відповідних таблиць. У більшості діалектів SQL для спрощення набору таблицям дозволяється задавати псевдоніми (aliases). Псевдонім указується після імені таблиці в списку таблиць:

 

Література

1. Боуман Дж., Эмерсон С., Дарновски М. Практическое руководство по SQL. - К: Диалектика, 1997. - 320 с.

2. Брункшир Дж. Введение в компьютерные науки. Общий обзор: Пер. с англ. - М.:Вильямс, 2001. -688 с.

3. Бхамидипати К. SQL. Справочник программиста. – М.:ЭКОМ,2003. – 304 с.

4. Дейт К. Введение в системы баз данных: Пер. с англ. –К.: Диалектика, 2002. –803 с.

5. Карпова Т.С. Базы данных: модели, разработка. реализация. – СПб.: Питер, 2001. – 304 с.

6. Конноли Т., Бегг К., Страчан А. Базы данных: проектиро­вание, реализация и сопровождение. Теория и практика: - М.: Издательский дом "Вильямс", 2000. – 1120 с.

7. Корнієнко С. К. Системи баз даних: організація та проектування: Навч. Посібник. –Запоріжжя: ЗНТУ, 2006. –252 с.

8. Пасічник В.В., Резніченко В.А. Організація баз даних і знань. – К.:BHV, 2006. – 384 с.

 

 


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

Методичні вказівки

До практичних занять

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

6.050103 “Програмна інженерія”

усіх форм навчання

 

 

 

 


Організація баз даних і знань. Методичні вказівки до практичних занять для студентів напрямку підготовки 6.050103 “Програмна інженерія” усіх форм навчання /Уклад.: Корнієнко С.К., Качан О.І. –Запоріжжя: ЗНТУ, 2009. –30 с.

 

 

Укладачі: С.К. Корнієнко, доцент, к.т.н.,

О.І. Качан, асистент

 

Рецензент: В.П. Пінчук, доцент, к.ф.-м.н.

 

 

Відповідальний

за випуск: А.В. Притула, доцент, к.т.н.

 

Затверджено

на засіданні кафедри

"Програмні засоби"

 

Протокол № 1 від 28.08.08 р.

 


ЗМІСТ

Вступ. 4

1 Життєвий цикл інформаційної системи. 5

2 Концептуальне проектування. 8

2.1 Аналіз концептуальних вимог та інформаційних потреб. 8

2.2 Виявлення інформаційних об'єктів та зв'язків між ними. 9

2.3 Побудова концептуальної моделі 10

3 Логічне проектування. 13

3.1 Вибір СКБД.. 13

3.2 Відображення концептуальної схеми на логічну схему БД.. 15

4 Основи Мови структурованих запитів SQL. 19

4.1 Типи даних. 19

4.2 Класифікація команд SQL. 22

4.3 Створення таблиць. 23

4.4 Проектування простих запитів на вибірку. 27

Література. 28

Додаток А Словник основних термінів. 29

 


Вступ

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

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

Методичні вказівки містять основні відомості та практичні рекомендації з концептуального і даталогічного проектування інформаційних систем, а також розрахунково-графічне завдання та рекомендації з їх виконання.

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



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 162; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 34.238.138.162 (0.111 с.)