Құрастырушы: аға оқытушы Алимова Ж. С



жүктеу 3,39 Mb.
Pdf просмотр
бет14/64
Дата20.01.2020
өлшемі3,39 Mb.
#27116
түріБағдарламасы
1   ...   10   11   12   13   14   15   16   17   ...   64

Реляциялық есептеу. 
Реляциялық   есептеу,   реляциялық   алгебраға   қарағанда,   кестені   бір
сұраныстың   көмегімен   анықтайды.   Реляциялық   есептеуде   сұраныс   келесі
түрде беріледі: 
{мақсаттық тізім: анықтаушы өрнек}
Мақсаттық   тізім   реляциялық   есептеудегі   сұраныстың   шешімі   болып
табылатын кестенің атрибуттарын (бағандарын) анықтайды. 
Анықтаушы өрнек шешу кестесінің элементтері қанағаттандыруға тиіс
болатын   шарттарды   береді.   Фигуралы   жақшалар   шешу   кестесіндегі
жолдардың   көптігін   білдіреді.   Еркін   түрдегі   жолды   белгілеу   үшін   латын
алфавитінің   кіші   әріптері   қолданылады.   Мысалы,   «Орион»   фирмасының
сауда   агенттерінің   қайсысы   Лондонда   тұрады   деген   сұраныс   келесі   түрде
беріледі: 
{r.Summ, r.Sname:=r IN Salespeople AND r.City=”London”}
Сұраныс нәтижесінде келесі кесте пайда болады. 
Summ Sname
1001                    Pal
1004                    Smith
Бұл мысалда реляциялық есептеудің сұранысы реляциялық алгебраның
келесі   екі   амалына   –   таңдау   және   проекцияны   құруға   теңбе-тең   болады.
A=select(Salespeople: City=London), B=A[Summ, Sname]
Тұтастай   алғанда   жоғарыда   көрсетілген   мысалдар   тәрізді
сұраныстарды,   жалғау   және   бөлу   амалдарынан   басқа,   реляциялық
алгебраның   амалдарымен   орындауға   болады.   Реляциялық   есептеуде   қосу
және бөлу амалдарына ұқсас келетін әрекеттерді орындау үшін сәйкесінше
бар болу кванторы мен жалпыға бірдей кванторы қолданылады. 
Реляциялық   есептеуде   болмыс   кванторы   дегеніміз   –   бұл   берілген
шартты   қанағаттандыратын   ең   болмағанда   бір   жолдың   болуын   білдіретін
өрнек.   Егер   де,   мысалы,   1002   агентіне   сұраныс   жасаған   клиенттерді   атап
шығу қажет етілсе, онда келесідегідей сұраныс жасау қажет: 
{r.Cname:=r IN Customers AND EXISTS s IN Orders (s.Cnum=r.Cnum and
s.Snum=1002)}
Мұндай сұраныс реляциялық алгебраның қосу және проекцияны құру
амалдары орындайтын әрекетті орындайды. 
Sname
Lewe
Grass
A=Join   (Customers  Orders:  Customers.Cnum=Orders.   Cnum   and
Orders.snum=1002)
B=[Cname]
Реляциялық есептеудегі жалпыға бірдей кванторы – бұл белгілі типтегі
әрбір   жолда   қолданылатын   шартты   білдіретін   өрнек.   Мысалы,   әрбір
клиенттен қай агент тапсырыс алды? Сұраныс келесі түрде болады. 


{r.Snum,   r.Sname:   r     IN   Salespeople    AND     s   IN   Orders  AND   THERE
EXISTS c IN Customers (r.Snum = s.Snum) AND (c.Cnum = s.Cnum)}
Реляциялық   есептеу   –   қалай   қол   жеткізуге   болатынын   емес,   нені
орындау   қажет   екендігін   тұжырымдауға   мүмкіндік   беретін   процедуралық
емес   тіл.   Реляциялық   есептеу,   реляциялық   алгебра   сияқты   теориялық   тіл
болып   табылады   және   логикалық   сипаттамаларға   негізделген   реляциялық
мәліметтер қорының кестелерін, олардың физикалық құрылымына қатыссыз
манипуляциялауға   арналған.   Реляциялық   есептеу   лексикалық   тұрғыдан
реляциялық алгебраға барабар, яғни ол реляциялық алгебра шешетін есепті
шешуге мүмкіндік береді. 
Қалыптандыру. 
Мәліметтер   қорын   әзірлеу,   жобалау   кезінде   кестелер   белгілі   бір
талаптарды   қанағаттандыруы,   яғни   стандарттық   түрге   ие   болуы   тиіс.   Бұл
талаптар қалыпты форма деп, ал қалыпты түрге келтіру үдерісі – қалпына
келтіру   деп   аталады.   Қалпына   келтірілмеген   кестелерді   реляциялық
алгебраның   әрекеттері   дұрыс   өңдемейді.   Мәліметтер   қорының   кестелері   4
қалыпты түрге сәйкес келуі тиіс. 
Алғашқы   қалыпты   форма  атрибуттардың   барлық   мәндері   жиындар
емес, қарапайым шамалар болуға тиіс болатынын ескереді. Мысалы, келесі
түрдегі жазбаға 
0023003 {607.1, 160.09} 10/03/2000 2001 1001
жол берілмейді, себебі ол алғашқы қалыпты формаға сәйкес келмейді.   
Екінші қалыпты форма. Егер де ешбір кілттік емес атрибуттар кілттің
бөлігіне тәуелді болмаса, реляциялық кесте екінші қалыпты формада болады.
Осылайша, екінші қалыпты форма бастапқы кілт құрамдас болған жағдайда,
былайша   айтқанда,   бірнеше   атрибуттардың   жиыны   болған   жағдайда   ғана
бұзылуы мүмкін. Мысалы, келесі кесте, 
Clerk      Office       Name
     1004        312     Smith
 1001        312          Pol
 1004        515          Smith
 1001        460          Pol
 1001        435          Pol
ондағы   Clerk   пен   Office   бастапқы   кілт,   екінші   қалыпты   түрде   емес,
себебі Name атрибуты Clerk атрибутына тәуелді. 
Кесте екінші қалыпты формада болу үшін оны келесі түрде екі кестеге
бөлу керек 
Clerk      Office
 
 Clerk       
 
 Name
     1004        312                 1001         Paul
 1001        312                          1004        Smith
 1004        515          


 1001        460          
 1001        435          
Үшінші   қалыпты   форма.  Егер   кез   келген   детерминант   кілт   болып
табылса,   онда   реляциялық   кесте   үшінші   қалыпты   формада   болады.
Детерминант   деп   кестенің   әрбір   жолындағы   басқа   атрибуттың   мәнін
анықтайтын атрибут аталады. 
Кестені қарастырайық. 
Kod              Skill               Bonus       
                   1004             Manager        3.5
              1001             Clerk             3.0
              1007             Clerk            3.0
Бұл кестеде  Kod  бағаны  кілт болып табылады  және  Skill  мен  Bonus
бағандарын   анықтайды.   Сонымен   қатар,   Skill   (біліктілігі,   разряды)   бағаны
кілт болмаса да, Bonus бағанында анықтайтынын көріп отырмыз. Бұл деген
сөз, кесте үшінші қалыпты формада бола алмайды. Бұл мәселені шешу үшін
кестені келесі түрде екі кестеге бөлу керек. 
Kod              SkillSkill  Bonus
                   1004             Manager        Manager  3.5
              1001             Clerk             Clerk 3.0
              1007             Clerk
Төртінші   қалыпты   форма  өзге   атрибутқа   (көпмәнді   байланыстылық)
тәуелді   болатын   атрибут   мәніңің   көп   рет   қайталану   мүмкіндігіне   жол
бермейді.   Мысалы,   егер   кестеде   агент   Smith-тің   1001   және   1007
қызметкерлерінің   менеджері   болып   табылатынын,   және   2003,   2001,   2004
клиенттерінен   тапсырыс   алғанын   көрсету   керек   болса,   онда   келесі   кесте
пайда болады.  
Name        Snum        Cnum 
              Smith        1001         2003
              Smith        1001         2001
              Smith        1001         2004
              Smith        1007         2003
              Smith        1007         2001
              Smith        1007         2004
Алынған   кесте   төртінші   қалыпты   формада   емес.   Төртінші   қалыпты
формаға келтіру, кестені әрбір тәуелді атрибут жеке орналасқан екі кестеге
бөлу арқылы орындалады. 
Name        SnumNameCnum
              Smith        1001         Smith         2003
              Smith        1007Smith         2001


жүктеу 3,39 Mb.

Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   64




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау