baze podataka - uvodno predavanje

Post on 24-May-2015

1.133 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ПОЈАМ ПОДАТКА

• СПОЗНАЈОМ СВОЈСТАВА ПОЈЕДИНИХ ПОЈАВА И ОБЈЕКАТА ИЛИ ИСХОДА ДОГАЂАЈА СМАЊУЈЕ СЕ СТЕПЕН НЕОДРЕЂЕНОСТИ СВЕТА КОЈИ НАС ОКРУЖУЈЕ А МИ СМО ДОБИЛИ НЕКУ ИНФОРМАЦИЈУ

• ПРИКАЗИВАЊЕМ ИНФОРМАЦИЈА У ФОРМАЛИЗОВАНОМ ОБЛИКУ ПОГОДНОМ ЗА ЗАПИСИВАЊЕ, ПРЕНОС, СКАДИШТЕЊЕ И ОБРАДУ НАСТАЈУ ПОДАЦИ, ТЈ. ПОДАЦИ СУ ДИСКРЕТНИ ЗАПИСАНИ ФАКТИ О ФЕНОМЕНИМА И ИЗ ЊИХ СЕ ДОБИЈАЈУ ИНФОРМАЦИЈЕ О СВЕТУ.

ОБРАДА ПОДАТАКА

ПОДАЦИ СЕ

• ПРИКУПЉАЈУ (записују и преносе)

• ОРГАНИЗУЈУ

• СКЛАДИШТЕ (МЕМОРИШУ)

• ОБРАЂУЈУ

• ПРЕЗЕНТУЈУ

ПОЈАМ ОБЈЕКТА• За сваки проблем који се решава (са или

без рачунара) постоји ограничен број објеката који су од интереса и називају се елементарни објекти или ентитети, а њихов скуп сачињава простор објеката

• Ентитет је нешто што се може једнозначно идентификовати

• Сваки објекат мора имати ИМЕ

• ИМЕ мора бити јединствено, тј. Не могу постојати у једној бази два иста објекта

ВРСТЕ ЕНТИТЕТА

Одабрани ентитет по својој природи може бити:

• Реални објекат, део света (особа, фирма, зграда)

• Апстрактни појам (звање, количина)• Догађај (саобраћајни удес, упис

студената, поптавка тв)• Асоцијација (полазник-курс, лекар-

пацијент, предмет-професр-студент)

ПОЈАМ АТРИБУТА

• Сваком елементарном објекту приписује се одређени квалитет у вези са проблемом који се решава, а ти квалитети називају се атрибути или својства објекта

• Пошто за један проблем може бити од значаја више разних атрибута истог или разних објеката, сваки атрибут мора имати име, а такође и вредност тј. Квантитативни одраз квалитета

• Један објекат може да карактерише више атрибута од важности за решење датог проблема и oни се називају елеметарна обележја

Обележје-атрибут• Елементарно обележје је обележје које се

даље не може декомпоновати, или које се у датом случају даље не декомпонује на компоненте.

• Скуп, низ или логички производ елементарних обележја представља сложено обележје и њему се не придружује име.

• Између обележја и типа ентитета нема јасне разлике јер именовано сложено обележје уствари представља тип ентитета

Кључ типа ентитета• Дефиниција:Ентитет је нешто што постоји и

што се може једнозначно идентификовати указује на потребу да се сви ентитети једне класе могу међу собом разликовати, што намеће потребу да се и њихови модели морају разликовати.

• Мора постојати непразан скуп обележја такав да је њихова вредност за свака два ентитета раличита (суперкључ).

• Ако не постоји ни један подскуп тога скупа такав да важи претходни став онда је то кључ (минималност: Кључ не поседује сувишна обележја).

Примарни кључ

• Један тип ентитета може имати више кључева, и они се називају еквивалентни кључеви.

• Један од еквивалентних кључева се бира за примарни кључ.

• Примарни кључ је:– Јединствен– Расположив – Непроменљив

ЕЛЕМЕНТАРНИ ПОДАТАК• АТРИБУТСКО ИМЕ ЈЕ НАЗИВ ОДРЕЂЕНОГ

КВАЛИТЕТА (СВОЈСТВА ОБЈЕКТА), А АТРИБУТСКА ВРЕДНОСТ ЈЕ КВАНТИТАТИВНА, БРОЈНА ВРЕДНОСТ КОЈА ПРИПАДА ИЗВЕСНОМ СКУПУ ВРЕДНОСТИ

• СВАКОМ ЕЛЕМЕНТАРНОМ ОБЈЕКТУ ПРИПИСУЈЕ СЕ ЕЛЕМЕНТАРНИ ПОДАТАК (САМО ЈЕДНА ВРЕДНОСТ), КОЈИ СЕ ОПИСУЈЕ НА СЛЕДЕЋИ НАЧИН:

<ИМЕ ОБЈЕКТА, ИМЕ СВОЈСТВА (АТРИБУТ), ВРЕДНОСТ СВОЈСТВА>

• ОВО ЈЕ ТАКОЗВАНА ИНТЕНЗИЈА

• ПОСТОЈИ ВИШЕ НАЧИНА НА КОЈИ СЕ ОВА ТРИ АСПЕКТА ПОДАТАКА МОГУ ПОВЕЗАТИ, ДАКЛЕ ПОСТОЈЕ РАЗЛИЧИТИ МОДЕЛИ ПОДАТАКА

Домен

• Скуп могућих вредности које неко обележје у конкретном случају може имати назива се домен обележја.

Напомена: домен није, као у математици, скуп оригинала функције.

• Домен може поседовати сопствено име.

• Исти домен може се придружити већем броју различитих обележја

Интегритет доменаИнтегритет домена је тројка (тип податка,

дужина податка, услов).• тип податка (INTEGER, CHAR, LOGICAL,

DATE, CURRENCY, OLE, MEMO, ...)• Услов

– Регуларни израз, x>0 AND x<=5 – Функције над обележјима:

AKO JE(if) obeležje1>XX ONDA(then) obeležje2=YY INAČE (else) obeležje2=ZZ

KRAJ AKO (end if)

Нула вредност

Нула вредност је специјално ограничење домена, тако да обележје може имати и недефинисану вредност која настаје када:

• Када објекат поседује неко својство али вредност тренутно није позната.

• Када објекат не поседује неко својство

ПОЈАМ ЗАПИСА - СЛОГ

• Скуп свих вредности елементарних обележја која се односе на један објекат представља запис или логички слог, и при томе се сваки елементарни податак (појединачна вредност) смешта у једно поље записа

АТРИБУТИ: БР.РАД. ИМЕ ПОЛ ОДЕЉЕЊЕ РАДНИ_СТАЖ

ЗАПИС: 53125 АНА Ж ПРОДАЈА 3 Г. 2 М. 17 Д.

ДАТОТЕКА

Скуп записа који одговарају једном простору објеката чини датотеку, и при томе мора важити следеће:

• Једном простору објеката одговара једна датотека

• Број записа у датотеци једнак је броју објеката у простору

• Број елементарних обележја објекта једнак је броју поља у запису

ПОЈАМ БАЗЕ ПОДАТАКА

• УКОЛИКО ЗА ЈЕДНУ АПЛИКАЦИЈУ ТРЕБА ДЕФИНИСАТИ ВИШЕ ПРОСТОРА ОБЈЕКАТА (СКУПОВА ОБЈЕКАТА), ОБРАЗУЈЕ СЕ БИБЛИОТЕКА ДАТОТЕКА,

• А КАДА СЕ ИЗМЕЂУ ТИХ ДАТОТЕКА УСПОСТАВЕ ОДРЕЂЕНЕ ЛОГИЧКЕ ВЕЗЕ ПОМОЋУ СОФТВЕРА КОЈИ СЕ ЗОВЕ DBMS (Data Base Management System ) НАСТАЈЕ БАЗА ПОДАТАКА

• ИМЕНА ПРОСТОРА ОБЈЕКАТА ЗАЈЕДНО СА ЊИХОВИМ СВОЈСТВИМА ЧИНЕ ШЕМУ ПОДАТАКА КОЈА ИДЕНТИФИКУЈЕ ИМЕНА КАТЕГОРИЈА, ЊИХОВА СВОЈСТВА И ВЕЗЕ ИЗМЕЂУ ЊИХ, А СКУП ПОДАТАКА УРЕЂЕН ПО НЕКОЈ ШЕМИ НАЗИВА СЕ БАЗА ПОДАТАКА

• МОДЕЛ ПОДАТАКА ДЕФИНИШЕ ПРАВИЛА ПРЕМА КОЈИМА СЕ ПОДАЦИ УРЕЂУЈУ ТЈ. СТРУКТУРИРАЈУ, АЛИ ДА БИ ДОБИЛИ ПОТПУНУ ИНТЕРПРЕТАЦИЈУ ЗНАЧЕЊА ПОДАТАКА НЕОПХОДНО ЈЕ ДЕФИНИСАТИ И СКУП ДОЗВОЉЕНИХ ОПЕРАЦИЈА НАД ТИМ ПОДАЦИМА.

• СВОЈСТВА КАТЕГОРИЈА КОЈЕ ОБУХВАТА ЈЕДАН МОДЕЛ ПОДАТАКА ДЕЛЕ СЕ НА:

А) СТАТИЧКА Б) ДИНАМИЧКА

СВОЈСТВА КАТЕГОРИЈА

• СТАТИЧКА СВОЈСТВА СУ РЕЛАТИВНО НЕПРОМЕНЉИВА У ВРЕМЕНУ И НАЗИВАЈУ СЕ СКУП ГЕНЕРИШУЋИХ ПРАВИЛА, ОДНОСНО

ЈЕЗИК ЗА ДЕФИНИСАЊЕ ПОДАТАКА – DDL

• ДИНАМИЧКА СВОЈСТВА МОДЕЛА ИЗРАЖАВАЈУ СЕ СКУПОМ ОПЕРАЦИЈА КОЈЕ СЕ ВРШЕ НАД ТИМ ПОДАЦИМА И ЗОВУ СЕ

ЈЕЗИК ЗА МАНИПУЛАЦИЈУ ПОДАЦИМА - DML

ЛОГИЧКА ОРГАНИЗАЦИЈА БАЗЕ ПОДАТАКА -МОДЕЛИ

ДАНАС ПОСТОЈЕ ЧЕТИРИ МОДЕЛА У УПОТРЕБИ, АЛИ НАЈВАЖНИЈА СУ ДВА ПОСЛЕДЊА:

1. ХИЈЕРАРХИЈСКИ МОДЕЛ

2. МРЕЖНИ МОДЕЛ

3. РЕЛАЦИОНИ МОДЕЛ

4. ОБЈЕКТНИ МОДЕЛ

БЕЗ ОБЗИРА КОЈИ ЈЕ МОДЕЛ У ПИТАЊУ МОРА ПОСТОЈАТИ МОГУЋНОСТ ДА СЕ:

• ПОДАЦИ МОГУ ДЕФИНИСАТИ

• ДА СУ ДЕФИНИСАНА ПРАВИЛА ЗА ОДРЖАВАЊЕ ИНТЕГРИТЕТА ПОДАТАКА

• ДА СУ ПОЗНАТА ПРАВИЛА ЗА МАНИПУЛАЦИЈУ ПОДАЦИМА

Модел података се помоћу одговарајућег СУБП имплементира у одговарајућу базу података,

Модел процеса се претвара у израду одређених апликација.

РЕЛАЦИОНИ МОДЕЛ - ТАБЕЛЕ

ПРИМЕРИ ТАБЕЛА

УСЛОВИ ДА БИ ТАБЕЛА БИЛА РЕЛАЦИЈА

Све вредности података једног атрибута морају бити истог типа.

Међу подацима у табели неке релационе базе података не смеју постојати функционалне зависности међу атрибутима.

Унутар једне релације не смеју постојати две идентичне n-торке.

Редослед n-торки у релацији је небитан, и самим тим може бити произвољан.

Сви атрибути унутар једне релације морају имати различита имена, док је редослед њиховог навођења произвољан.

ВЕЗЕ-РЕЛАЦИЈЕ

1:N

M:N

ВРСТЕ РЕЛАЦИЈА - ВЕЗА

• 1:1 ако постоји кореспонденција један према један од неког атрибута А према атрибуту Б, онда свакој вредности атрибута А одговара једна и само једна вредност за Б, кажемо да атрибут А идентификује Б

• 1:N ако постоји кореспонденција један према више од атрибута А према атрибуту Б, онда свакој вредности атрибута А одговара нула, једна или више вредности за Б,

• N:М

КЉУЧНИ МОМЕНТИ У ПРОЈЕКТОВАЊУ МОДЕЛА

• ИЗБОР ОБЈЕКАТА

• ИЗБОР АТРИБУТА

Избор објеката

• Одређивање скупа објеката који су од интереса није јасно одређен задатак нити је једнозначан.

• Да би апликација била одређена довољно је наћи бар један скуп објеката који је јасно и потпуно дефинишу.

Избор објеката• Текстуални опис захтева који морају бити

задовољени може се употребити за одређивање објеката и веза међу њима:

• Именице указују на потребу увођења типова ентитета

• Глаголи указују на потребу увођења везних објеката

• Искази облика бар један, најмање један, више и сл. указују на кардиналност веза

• Постојање различитих улога једног ентитета у везама са другим ентитетима указују на више везних објеката.

Избор објеката

• Присуство веза међу ентитетима из једног скупа објеката показују на присуство унарних веза (рекурзивна веза)

• Временско претхођење ентитета једног скупа у односу на ентитете другог скупа указује на егзистенцијалну зависност и на потребу увођења минималног кардиналитета а1=1

• Постојање ентитета са специфичним особинама или специфичним везама указује на потребу увођења хијерерхије

Избор објеката• Постојање ентитета са истим улогама у две разна

скупа ентитета указује на потребу увођења категорије

• Свако обележје може припадати само једном типу ентитета (везни објекти могу наслеђивати кључеве повезаних ентитета, слаби ентитети наслеђују кључ чврстог објекта, поткласе наклеђују не само кључ већ и особине суперкласе)

• Тип ентитета и везе садржи само она обележја која су битна за реализацију циљева ИС

Објекти • Статус објекта у Е-Р моделу

информационог система имају они ентитети који поред идентификатора објекта (примарног кључа) имају још нека својства која се описују атрибутима.

• Под атрибутом се сматра оно својство објекта које се описује једним податком.

• Уколико је за описивање атрибута потребно више података, онда тај атрибут представља нови објекат.

РЕЛАЦИОНЕ БАЗЕ ПОДАТАКА• РЕЛАЦИОНА БАЗА ПОДАТАКА ЈЕ СКУП

РЕЛАЦИЈА КОЈЕ СЕ МЕЊАЈУ ТОКОМ ВРЕМЕНА, А ЧИЈИ ЈЕ ОПИС СТРУКТУРА ДАТ РЕЛАЦИОНОМ ШЕМОМ

• РЕЛАЦИОНИ МОДЕЛ СЕ МОЖЕ ОПИСАТИ КАО СКУП ПОВЕЗАНИХ ТАБЕЛА

• БИТНЕ КАРАКТЕРИСТИКЕ РЕЛАЦИОНОГ МОДЕЛА:

1. ВЕОМА ЈЕДНОСТАВНА И ПРИРОДНА ПРЕЗЕНТАЦИЈА У ОБЛИКУ ТАБЕЛА КОЈЕ СУ ВРЛО ПОГОДНЕ И ЗА КОМУНИКАЦИЈУ СА КОРИСНИКОМ

2. МОГУЋА ЈЕ ФОРМАЛНО МАТЕМАТИЧКА ИНТЕРПРЕТАЦИЈА МОДЕЛА, ТЈ. ТАБЕЛА СЕ МОЖЕ ДЕФИНИСАТИ КАО РЕЛАЦИЈА, И ПОТОМ СЕ МОГУ ПРИМЕНИТИ ОПЕРАТОРИ РЕЛАЦИОНЕ АЛГЕБРЕ

ДЕФИНИЦИЈА ТАБЕЛЕ• ТАБЕЛА СЕ ДЕФИНИШЕ КАО НИЗ НАЗИВА

КОЛОНА СА НУЛА ИЛИ ВИШЕ РЕДОВА (ВРСТА, N-ТОРКИ) КОЈИМА СУ ЗАДАТЕ ВРЕДНОСТИ КОЛОНА

• НАЗИВ КОЛОНЕ ЈЕ ИМЕ КОЈИМ СЕ ПРЕДСТАВЉАЈУ ВРЕДНОСТИ УНЕТЕ У ТУ КОЛОНУ.

• НАЗИВ КОЛОНЕ ЈЕ ЈЕДИНСТВЕН ЗА ДЕФИНИСАНУ ТАБЕЛУ

• У РАЗНИМ ТАБЕЛАМА МОГУ ПОСТОЈАТИ КОЛОНЕ СА ИСТИМ ИМЕНОМ

РЕДОВИ, N-ТОРКЕРЕДОВИ ТАБЕЛЕ ОДГОВАРАЈУ ЛОГИЧКИМ

СЛОГОВИМА СЕКВЕНЦИЈАЛНЕ ДАТОТЕКЕ И ИМАЈУ СЛЕДЕЋЕ ОСОБИНЕ:

• СВАКИ РЕД ИМА ЈЕДНУ И САМО ЈЕДНУ ВРЕДНОСТ ЗА СВАКУ КОЛОНУ ТАБЕЛЕ

• РЕДОВИ ТАБЕЛЕ ИМАЈУ ИСТИ СКУП КОЛОНА И ПРИ ТОМЕ НЕКЕ ОД ВРЕДНОСТИ МОГУ БИТИ НУЛЛ, ТЈ. НЕ МОРАЈУ ИМАТИ ВРЕДНОСТИ ЗА СВАКУ КОЛОНУ

• СВЕ ВРЕДНОСТИ УНУТАР ЈЕДНЕ КОЛОНЕ СУ ИСТОГ ТИПА

• РЕДОВИ СУ ЈЕДИНСТВЕНИ ТЈ. НЕ СМЕЈУ ПОСТОЈАТИ ИДЕНТИЧНИ РЕДОВИ УНУТАР ТАБЕЛЕ.

КЉУЧ ТАБЕЛЕ

• КЉУЧ ТАБЕЛЕ ЈЕ СКУП КОЛОНА ЧИЈЕ ВРЕДНОСТИ ЈЕДИНСТВЕНО ОДРЕЂУЈУ ВРЕДНОСТИ СВИХ ОСТАЛИХ КОЛОНА

• НЕ ПОСТОЈИ НИЈЕДАН ПОДСКУП ОВОГ СКУПА КОЈИ ИМА ПРЕТХОДНО СВОЈСТВО

ВРСТЕ ТАБЕЛА

• БАЗНА-ФИЗИЧКА ТАБЕЛА која постоји на диску и садржи податке

• ВИРТУЕЛНА неименована табела које постоји само у радној меморији рачунара и у којој су приказани подаци издвојени из физичких табела (најчешће као резултат неког упита)

• ПОГЛЕД именована виртуелна табела чија се дефиниција чува као објекат у бази

РЕЛАЦИОНА АЛГЕБРА

Codd-ова правила • Основно или нулто правило које

представља “conditio sine qua non“[1] у релационим базама података гласи:

Сваки систем за управљање базама података, који се сматра, или који јесте, релациони, мора имати могућност управљања базом података на релациони начин и релационим методама.

[1] Услов без којег се не може

1. Представљање информација

• Све информације у релационој бази података морају логички бити представљене на исти начин: вредностима података у табелама - релацијама.

2. Логичка доступност подацима

Сваки податак мора имати такозвану “атомарну“[2] вредност, која логички мора бити доступна кориснику уз помоћ:

• имена релације у којој се налази, • вредности примарног кључа и • имена атрибута у тој релацији.

[2] Даљим рашчлањивањем податка, податак губи свој идентитет, као што и атом разбијањем губи своја основна својства.

3.Могућност приказивања непостојеће информације

• Релациона база података мора подржавати концепт нултог податка, односно нулте вредности (Null вриједност).

Под појмом нултог податка подразумева се вредност неког атрибута која у датом тренутку није позната, није наступио моменат његовог постојања или неки објекти уопште не поседују то својство. То није вредност која је представљена нулом или низом нула, низом празних мјеста, или низом било којих других знакова.

То је једноставно, тренутно непозната вредност податка, или вредност својства који неки елементарни објекат не поседује.

4. Динамички каталог

• Релациона база података мора бити тако презентирана да ауторизовани корисници могу примијенити неки од “релационих језика” на све податке у њој.

Под овим се подразумијевају и системски каталози, затим релације које су у току рада за стално, или на ограничени временски рок, програмски креиране (тзв. динамички каталози), а које садрже неке нове информације.

5. Софтверски пакет за манипулацију базом података

Многи софтверски пакети омогућавају данас манипулисање подацима унутар базе података, и они су мање или више прилагођени кориснику - манипулатору.

Сваки од њих садржи програмски језик који помоћу прецизно дефинисане синтаксе, и на кориснику близак начин, омогућава:

•  дефинисање табела, • дефинисање атрибута, • уношење података,• дефинисање произвољног “погледа”

на базу података,• манипулацију подацима, • постављање ограничења

корисницима, • ауторизацију корисника,и • управљање произвољним

трансакцијама.

6. Независност интегритета базе• Ниједно ограничење интегритета

података (сигурности очувања података) не сме се при организацији логичког модела релационе базе података наћи у апликативном делу програма доступном ширем броју корисника, него искључиво у деловима који су под контролом администратора базе.

Другим речима, правила интегритета се дефинишу у оквиру базе података.

Ограничења у релационом моделу Потребно је ограничити вредности неких

атрибута у појединим релацијама: • Сам домен атрибута већ представља

одређено ограничење (старост, цена, итд...). • Интегритет ентитета: Ниједан атрибут који је

примарни кључ или део примарног кључа неке базне релације не може да узме null вредност.

• Референцијални интергритет: Скуп вредности спољњег кључа релације R1 мора бити подскуп скупа вредности примарног кључа релације R2 са којом се повезује релација R1. Релације R1 и R2 не морају бити различите.

7. језиком треће генерације се не могу заобићи правила интегритета дефинисана релационим језиком;

8. могућност креирања погледа и дефинисања операција над њима;

9. над погледима се могу извршавати и операције одржавања базе података;

10.апликациони програми остају непромењени ако се промене базне табеле (сем у случају промене структуре табела);

11.апликациони програми остају непромењени ако се промени физичка организација базе или физички метод приступа;

12.све наведене карактеристике су независне од дистрибуције базе података.

Оператори релационе алгебре• Опеатори релационе алгебре

дефинишу скуп операција над релацијама помоћу којих је могуће, из датог скупа релација (релационог модела), формирати жељене изведене релације.

• Чине их две групе оператора:

1. За ажурирање релација

2. За извештавање

ОПЕРАТОРИ РЕЛАЦИОНОГ МОДЕЛА• ОПЕРАТОРИ РЕЛАЦИОНЕ АЛГЕБРЕ

1. ОПЕРАТОРИ ПОГОДНИ ЗА АЖУРИРАЊЕ

2. ОПЕРАТОРИ ПОГОДНИ ЗА ИЗВЕШТАВАЊЕ

• ОПЕРАТОРИ РЕЛАЦИОНОГ РАЧУНА (=, >, >=, <, <=, … )

Dvovrednosna i trovrednosna logika

• Dvovrednosna logika:Logički iskazi (TRUE-tačno, FALSE-Netačno)

• Trovrednosna logika:Logički iskazi (TRUE-tačno, FALSE-Netačno, NULL-MAYBE)

Null vrednosti i trovrednosna logika

Dvovrednosna i trovrednosna logika

• Logičke operacije: unarne i binarne

• Unarne logičke operacije: NOT (NE)

• Binarne logičke operacije: AND (I), OR (ILI), XOR (Isključivo ILI)

Dvovrednosna logika NOT

x NOT

F T

T F

Dvovrednosna logika AND

x y x*y AND T F

F F F T T F

F T F F F F

T F F

T T T

Dvovrednosna logika OR

x y x+y OR T F

F F F T T T

F T T F T F

T F T

T T T

Dvovrednosna logika XOR

x y x +y XOR T F

F F F T F T

F T T F T F

T F T

T T F

Dvovrednosna logika relacija =

x y = = T F

F F T T T F

F T F F F T

T F F

T T T

Dvovrednosna logika relacija ≠

x y ≠ ≠ T F

F F F T F T

F T T F T F

T F T

T T F

Trovrednosna logika NOT

x NOT

F T

T F

Null Null

Trovrednosna logika AND

AND T F Null

T T F Null

F F F Null

Null Null Null Null

Trovrednosna logika OR

OR T F Null

T T T Null

F T F Null

Null Null Null Null

Trovrednosna logika XOR

XOR T F Null

T F T Null

F T F Null

Null Null Null Null

Trovrednosna logika relacija =

= T F Null

T T F Null

F F T Null

Null Null Null Null

Trovrednosna logika relacija ≠

≠ T F Null

T F T Null

F T F Null

Null Null Null Null

Trovrednosna logika relacija ≠

≠ T F Null

T F T Null

F T F Null

Null Null Null Null

Trovrednosna logika operatotor IS NULL i IS NOT NULL

IS NULL

IS NOT NULL

vrednost

F T

T F T

F F T

Null T F

ОПЕРАТОРИ ПОГОДНИ ЗА АЖУРИРАЊЕ

• УНИЈА,

• ПРЕСЕК,

• ДИФЕРЕНЦИЈА,

ОПЕРАТОРИ ПОГОДНИ ЗА ИЗВЕШТАВАЊЕ

• ПРОЈЕКЦИЈА

• СЕЛЕКЦИЈА или РЕСТРИКЦИЈА

• СПАЈАЊЕ

• ДЕЉЕЊЕ

Оператори за ажурирање релација

• Унија, пресек и диференција

Оператори за ажурирање релација се дефинишу над релацијама са истим доменима, тј. са истим атрибутима који морају бити дефинисани над истим доменима

Унија

• Унија две релације (два скупа, две табеле) R1 и R2, је релација R3 која садржи све n-торке које припадају релацији R1 и све n-торке које припадају релацији R2, сем оних које су идентичне са неким n-торкама у релацији R1 .

Операција уније се користи за додавање нових n-торки у неку релацију (упис)

Унија две релације

Додавање нове n-торке

Диференција-разлика релацијаРазлика двеју релација R1-R2 је релација R3 која садржи све n-торке из R1 које нису истовремено садржане у R2

Диференција-разлика релација

• Разлика двеју релација R1-R2 се користи за избацивање (брисање) n-торки из релације.

• Измена садржаја неке n-торке врши се у два корака:

1. Помоћу диференције (разлике) избацимо n-торку из табеле.

2. Затим извршимо потребне измене у n-торки и онда је помоћу УНИЈЕ вратимо у релацију

Ажурирање, тј. измена n-торкеполазна релација

n-торка коју треба изменити

релација без n-торке коју треба изменити

измењена n-торка

резултујућа релација након додавања измењене n-торке

Пресек

• Пресек две релације (два скупа, две табеле) R1 и R2, је релација R3 која садржи све n-торке које истовремено припадају и релацији R1 и релацији R2.

Производ (Декартов)

• производ два скупа А и Б, дефинише се као скуп уређених парова у којем први елемент припада скупу А а други скупу Б.

• Операција производа двеју или више релација користи се за спајање релација (прибављање података из више релација-табела)

Производ двеју релација

Операције погодне за извештавање

Пример релационе базе података зване Предузеће дате у облику интензије:

• RADNIK <idbr#,kvalif, ime, posao, rukovodilac, dat_zap, premija, plata, brod$>

• ODJELJENJE <brod#,, naziv, mesto>• PROJEKAT <brproj#,, imeproj, sredstva>• UČEŠĆE <idbr#, brproj#, funkcija,>

Имплицитне претпоставке садржане у релационом моделу

• Један Радник ради само у једном Одељењу

• Једно Одељењу запошљава више Радника

1:N

• Један Радник Учествује на више Пројеката

• Један Пројекат ангажује више Радника

N:М

Пројекција

• Пројекција је операција помоћу које се издваја скуп од m атрибута једне релације (скуп колона једне табеле) у нову релацију. При томе се елиминишу све m-торке (врсте) дупликати које после издвајања могу настати.

R1(D1,…,Dm) =P(D1,…,Dm) OF R1(D1,…,Dm)

Radnik1 (brod#,kvalif)= P(brod#,kvalif) OF Radnik

Рестрикција-Селекција

• Рестрикција је издвајање оних n-торки из једне релације R1 (скуп врста једне табеле) које задовољавају неки услов P() над атрибутима релације R1 у нову релацију.

R1[P] = { x | xR1 Λ P() }

Radnik1= Radnik[kvalif=VSS]

Спајање• Нека су дате две релације А(А1,…,Аn) и B(B1,

…,Bm) и нека су X{A1,…An} и Y{B1,…,Bm} два скупа једнаког броја атрибута са једнаким кореспондентним доменима. Означимо са Z комплемент {A1,…An}/X, а са W комплемент {B1,…,Bm}/Y. Онда релације А и B можемо написати у облику: A(Z,X), B(Y,W). Нека је нека бинарна операција релационог рачуна из скупа {=, <, , ,,} која може бити дефинисана над доменима атрибута X и Y.

Природно спајање

• Резултат природног спајања релација А и B по атрибутима X и Y означимо са R=A[X Y]B при чему је =“=“ па је R=A[X=Y]B и то је скуп:

A[X=Y]B={(Z,X,W) | (X,Z)A, (Y,W)B X=Y}

• Уочавамо да релација R има скуп атрибута који је унија скупова Z, X(=Y), W.

• Дакле, на n-торке из релације A додају се m-торке из релације B, и то само оне које имају исте врдности неких атрибута.

ЈЕЗИЦИ ЗА РАД СА РЕЛАЦИОНИМ БАЗАМА ПОДАТАКА

• SQL Structured Query language

• QBE Query By Example

SQL

• ОСНОВУ ЈЕЗИКА ЧИНИ УПИТНИ БЛОК А ОСНОВНЕ КAРАКТЕРИСТИКЕ СУ:

1. ЈЕДНОСТАВНОСТ И ЈЕДНООБРАЗНОСТ ПРИ КОРИШЋЕЊУ

– ТАБЕЛА СЕ КРЕИРА ЈЕДНОМ НАРЕДБОМ И ОДМАХ ЈЕ РАСПОЛОЖИВА ЗА КОРИШЋЕЊЕ.

– РЕЗУЛТАТИ СВИХ ОПЕРАЦИЈА СУ ОПЕТ ТАБЕЛЕ

SQL

1.МОГУЋНОСТ И ИНТЕРАКТИВНОГ И АПЛИКАТИВНОГ ПРОГРАМИРАЊА– НА SQL УПИТ СЕ ОДМАХ ДОБИЈЕ

ОДГОВОР ИЛИ СЕ SQL БЛОКОВИ УГРАЂУЈУ У ПРОГРАМЕ ПИСАНЕ У ВИШИМ ПРОГРАМСКИМ ЈЕЗИЦИМА

2.НЕПРОЦЕДУРАЛНОСТ (ТЈ. МИНИМАЛНА ПРОЦЕДУРАЛНОСТ)

top related