Тақырыбы «Мәліметтер Қорын басқару жүйесі»
Практикалық жұмыстың мақсаты:
Әрбір студентке берілген нақты тапсырма жүзінде анализдеуде және пәндік аумақтағы модельдеуде тәжірибелік дағды алу
Нормалдай процесін қолданып реляциондық мәліметтер базасын жобалау
МҚБЖ жұмысымен танысу (нақтылық үшін Microsoft Visual FoxPro МҚБЖ ұсынылады): кестелермен стандартты режимде жұмыс істеу, экранды форма, есеп, сұраныс құрастыру әдістері;
Microsoft Visual FoxPro ортасында модельденген реляционды үлгінің іске асырылуы.
Жалпы тапсырма:
Жобалау керек мәліметтер базасының пәндік аумағының сипаттамсымен танысыңыз.
Пәндік аумақтың тексттік сипаттамасының анализі негізінде МБ көрсетпекші мәліметтердің негізгі атрибуттарын белгілеңіз. Барлық ақпаратты бір нысан (қатынас) сипаттамасы ретінде көрсетіңіз – Банк, Кітапхана, Қонақүй және т. б. (нұсқаға байланысты).
Нормалдау процесін қолданып мәліметтер базасының логикалық үлгісін құрыңыз. Бастапқы нүктесі болып бір қатынас (пункт 2) түріндегі пәндік аумақтың көрінісі табылады, және әрбір жобалау қадамында келесілер болып отырады:
Негізгі мәнін белгілеңіз
әрбір мәні үшін оны сипаттайтын қасиеттерін (атрибуттарын) анықтаңыз
мәндер бір-бірімен қалай байланысты екенін анықтаңыз
Нормалды формаға сай шектеуліктерді қолданыңыз
Сұлба 3 НФ қатынасына жеткенше қадамдарды қайталаңыз
4. Microsoft Visual FoxPro ортасында мәліметтердің физикалық үлгісін құраңыз: физикалық үлгі кестелері логикалық үлгі қатынастарына, жолдар (баған) - атрибуттарға сәйкес келеді.
Microsoft Visual FoxPro ортасындағы конструктор көмегімен реляционды үлгі шеңберінде пәндік аумақ көрінісі үшін жоба, мәліметтер базасын және кесте құрыңыз. Әрбір құрылатын кестеге келесілерді анықтаңыз:
кесте құрылымын
жолдардың типтері мен өлшемін
индекстерін
кілттік жолдарын
міндетті жолдарын
Мәліметтер сұлбасын құрыңыз, кестелер арасында байланыс және «біреу көбіне» қатынаста байланысқан кестелерге бүтіндік шарттарын қойыңыз.
7-10 жолдан көп емес мәліметтер енгізіп, кестелерді толтырыңыз. Мәліметтер базасын толтыруды мәліметшіден бастау керек.
жұмысқа ыңғайлы интерфэйс құрыңыз, онда
ыңғайлы және ұғынықты формалар
есепті формалау және баспаға шығару
кесте бойынша іздеу
(SQL тілінде 5 – тен аз болмайтындай сұраныс жазу. Жазылған сұраныстардың жұмыс қабілеттілігін тексеру).
- 2 web - беттер
8. Қорытынды жазыңыз.
Практикалық жұмысты рәсімдеу
Практикалық жұмыстың орындалуының нәтижесі түсіндірмелі жазу (есеп) түрінде рәсімделуі керек. Түсіндірмелі жазу ауқымы шектелмейді. Жұмыс терілген түрде және таспадағы файл күйінде тапсырылады. Рәсімделген практикалық жұмыс тектстінде орфографиалық қателер, әріптік болмауы керек. Текст келесі қасиеттермен жөнделу керек: жоларалық интервал – бірлік, теңестіру – көлемі бойынша, өрісі:оң жақ – 10 мм, сол жақ – 20 мм, жоғарғы және төменгі – 20мм. . Шрифт – Times New Roman, негізгі шрифт өлшемі – 12 немесе 14. Тексттің барлық беттерінде номер болуы керек. Түсіндімелі жазбаның негізгі бөлігін бөлімдерге бөлу керек. Негізгі бөліктің бөлімдерін жолдың ортасында соңында нүктесіз орналастырып, жазба әріптермен, астын сызбай теру керек. Текст пен құрылымдық бастаманың ара-қашықтығы «бос жол» болып табылады. Иллюстрацияларын арап сандарыменномерлеу керек «1 Сурет». Иллюстрацияларды бөлім шектеулігіне қарай номерлеуге болады. Бұл жағдайда иллюстрация номері бөлім номері мен нүктемен бөлінген иллюстрацияның реттік номерынан тұрады. Мысалы – Сурет.Сондай – ақ компьютер мүмкіншілігін қолданып, назарын белгілі бір термин, формула, теорема, әр түрлі гарнитураға шрифттерді қолдануға аударады.
Практикалық жұмыс бойынша есептің мазмұны
Нұсқаға сәйкес практикалық жұмыстың аты көрсетілген титулды беті (мысалы, «Кітапхана» Реляционды Мәліметтер Базасын жобалау)
Беттері көрсетілген мазмұны
Жалпы тапсырма тексті
Пәндік аумақтың сипаттамасы
Нормалды форма әдісін қолданумен мәліметтер базасын жобалау процесінің сипаттамасы
Мәліметтер базасы кестесінің құрылымы (конструктор режимінде)
Кесте арасындағы байланыс құрылымы
Кестелер мазмұны
Формалардың құрылымы мен құрылу процесінің сипаттамасы
Сұраныс құрылымы (конструктор режимінде) және оны құру процесінің сипаттамасы
Сұраныс нәтижесі
Есеп құрылымы (конструктор режимінде) мен оны құру процесінің сипаттамасы
Есеп нәтижесі
Қорытынды
Теориялық мағлұмат
Қатынасты қалыпқа келтіру ұғымы. Бірден бір мәліметтер әртүрлі әдіспен кестелерге (қатынас)
Топтасады, яғни өзара байланысқан ақпараттық нысан қатынастарының әртүрлі терулі ұйымы болуы мүмкін. Қатынастағы атрибут топтасуы рационалды болуы керек, яғни, мәліметтер қайталануының аздығы және олардың өңделуі мен жаңаруының қарапайым процедуралары.
Егер қатынастарды нормалау талаптарына жауап берсе, басқа мүмкін болатын қатынастар теруіне қарағанда, белгілі бір қатынастар тобы қосқанда, мәліметтерді жойғанда күшті қасиеттерге ие.
Қалыпқа келтіру процесі дегеніміз қайтатоптау, ол қайталанушы топтарды жою және мәліметтерді сақтаудағы теріскейлерді жою жолымен кестені дұрыс ретке келтіреді.
Қалыпқа келтіру теориясы нормалды форма концепциясына негізделген. Айтуынша, кесте берілген нормалды формада болады, егер белгілі бір талаптарға жауап бере алса. Теория жүзінде бес нормалды форма бар, бірақ тәжірибеде тек бастапқы үшеуі қолданылады. Сонымен қатар, басындағы екі нормалды форма үшіншіге апаратын мәні бойынша мәліметтер базасын келтіру үшін аралақ қадамдар болып табылады.
Қалыпқа келтіру теориясы кестенің өріс арасындағы тәуелділікке негізделіп жасалады. Мұндай тәуелділіктің екі түрі бар: функционалды және көпмағыналы.
Функционалды тәуелділік. Кестенің В өрісі осы кестенің А өрісіне тәуелді, кез келген уақыт моментінде А өрісінің әртүрлі мағынасына В өрісінің әртүрлі мағынасының біреуі ғана міндетті түрде болады.
Ескере кететініміз, мұнда А және В өрістері құрама болуы мүмкін.
Толық функционалды тәуелділік. Егер әрбір А өрісіне функционалды тәуелді болса және кез келген А өрісінің көпастыртынына (помножества) функционалды тәуелді болмаса, В өрісі А құрама өрісінен толық функционалды тәуелділікте болады.
Көпмағыналы тәуелділік. А өрісі сол кестенің В өрісін көпмағыналы анықтайды, егер әрбір А өрісінің мағынасына көп сәйкес келетін жақсы анықталған В мағына болса.
NorthWind базасындағы мәліметтерді мысалға алып, нормалау процесін иллюстрациялайық. Барлық тапсырыс берілген азық-түлікті келесі кестеге тіркейміз деп алайық.
OrderID ProductID CustomerID Address Quantity OrderDate
10265 17 BLONP 24, place Kleber 30 07.25.96
10265 70 BLONP 24, place Kleber 20 07.25.96
10278 44 BERGS Berguvsvagen 8 16 08.12.96
10278 59 BERGS Berguvsvagen 8 15 08.12.96
10278 63 BERGS Berguvsvagen 8 8 08.12.96
10278 73 BERGS Berguvsvagen 8 25 08.12.96
10280 24 BERGS Berguvsvagen 8 12 08.14.96
10280 55 BERGS Berguvsvagen 8 20 08.14.96
10280 75 BERGS Berguvsvagen 8 30 08.14.96
10289 3 BSBEV Fauntleroy Circus 30 08.26.96
10289 64 BSBEV Fauntleroy Circus 9 08.26.96
10297 39 BLONP 24, place Kleber 60 09.04.96
10297 72 BLONP 24, place Kleber 20 09.04.96
10308 69 ANATR Avda. de la Constitucion 22 1 09.18.96
10308 70 ANATR Avda. de la Constitucion 22 5 09.18.96
Бұл кесте құрылымының түрі мынадай (4 сурет).
Сур. 4.OrderedProducts нормаланбаған кесте құрылымы
Бірінші нормалды форма қарапайым және күрделі атрибут ұғымдарымен байланысты. Қарапайым атрибут деп – мәні атомарлы (яғни бөлінбейтін) атрибутты айтамыз. Күрделі атрибут деп бір немесе бірнеше домендердің мәнін қосатын атрибутты айтамыз. Бірінші нормалды формада қайталанатын атрибуттар немесе атрибут топтары жойылады, яғни мәні басқа заттар шығады, атрибут астына жасырынғандар.
1НФ –ке қатынас алып келінеді, егер барлық атрибуттар қарапайым болса, яғни атрибут мәні көп немесе қайталанушы топ болмауы тиіс.
Кестелерді 1НФ-ға келтіру үшін күрделі атрибуттарды қарапайымға бөлі керек, ал көпмағыналы атрибуттарды бөлек қатынаста жазу керек.
Қатынастарды бірінші нормалды формаға түрлендіруқатынастардың реквизиттары (өрістері) және кілт өзгеруіне әкелуі мүмкін.
Кесте бірінші нормалды формаға сәйкес келуі үшін оның өрістерінің барлық мәні атомарлы және барлық жазбалары уникалды болуы тиіс. Сондықтан кез-келген реляционды кесте, оның ішінде OrderedProducts, анықтамасы бойынша бірінші нормалды формада орналасқан.
Сонымен қатар бұл кестеде артық мәліметтер де бар, мысалы, сатып алушы туралы кейбір мәліметтер әрбір берілген тапсырыста қайталанады. Мәліметтердің артықтығының нәтижесі мәліметтер модификациясының анамалиясы – жазбаларды қосқанда, өзгерткенде немесе жойғанда пайда болатын мәселелер. Мысалы, OrderedProducts кестесіндегі мәліметтерді реттеген кезде келесі мәселелер туындауы мүмкін:
Белгілі бір сатып алушының мекен-жайы мәліметтер базасында тек сатып алушы тым болмаса бір рет түлікке тапсырыс берсе ғана сақталады.
Тапсырыс берілген азы-түлік жазбасын жойғанда, сонымен бірге тапсырыс тапсырыс, сатып алушы жайлы да мәліметтер жойылады.
Егер тапсырыс беруші мекен-жайын өзгертсе, ол тапсырыс берген азық-түлік жайлы жазбаларды жаңарту керек.
Бұл мәселелердің кейбіреуі мәліметтер базасын екінші нормалды формаға келтірумен шешілуі мүмкін.
Айтуы бойынша, реляционды кесте екінші нормалды формада орналасқан,
егер ол бірінші нормалды формада орналасса және оның барлық кіттік емес өрістері толығымен біріншілік кілтке тәуелді.
OrderedProducts кестесі екінші емес бірінші нормалды формада
орналасқа, себебі CustomerID, Address и OrderDate өрістері OrderID өрісіне тәуелдіі, ал ол біріншілік кілттің (OrderID, ProductID) құрама бөлігі болып табылады.
Бірінші нормалды формадан екіншіге көшу үшін келесі қадамдарды
орындау керек:
Кілттік емес өрістердің кейбіреуі тәуелді болатындай біріншілік кілтті
қандай бөліктерге бөлуге болатынын анықта. (бұл бөліктердің бір бағаннан тұруы міндетті емес!).
Әрбір осындай бөлікке жаңа кесте құрып, оған тәуелді топтарды осы
кестеге көшіру. Бастапқы біріншілік кілттің жартысы жаңа кестенің біріншілік кілті болады.
Сыртқы кілт болатындар басқа келесі кестеге көшірілген алғашқы кестені жою.
Мысалы, OrderedProducts кестесін екінші нормалды формаға келтіру үшін, CustomerID, Address и OrderDate өрістерін жаңа кестеге (OrdersInfo деп атайық) көшіреміз, сонымен қатар OrderID жаңа кестенің біріншілік кілті болуы тиіс (5-сурет).
OrdersInfo
OrderID CustomerID Address OrderDate
10265 BLONP 24,place Kleber 07.25.96
10278 BERGS Berguvsvagen 8 08.12.96
10280 BERGS Berguvsvagen 8 08.14.96
10289 BSBEV Fauntleroy Circus 08.26.96
Avda. de la
Constitucion 2222
10297 BLONP 24, place Kleber 09.04.96
10308 ANATR 09.18.96
|
|
OrderDetails
|
OrderID
|
ProductID
|
Quantity
|
10265
|
17
|
30
|
10265
|
70
|
20
|
10278
|
44
|
16
|
10278
|
59
|
15
|
10278
|
63
|
8
|
10278
|
73
|
25
|
10280
|
24
|
12
|
10280
|
55
|
20
|
10280
|
75
|
30
|
10289
|
3
|
30
|
10289
|
64
|
9
|
10297
|
39
|
60
|
10297
|
72
|
20
|
10308
|
69
|
1
|
10308 70 5
|
Дегенмен, үшінші емес екінші нормалды формада орналасқан кестелерде бұрынғысынша мәліметтер модификациясының аномлиясы бар. Мысалы, OrdersInfo кестесі үшін:
Белгілі бір сатып алушының мекен-жайы бұрынғысынша мәліметтер базасында тек сатып алушы тым болмаса бір рет түлікке тапсырыс берсе ғана сақталады.
OrdersInfo кестесіндегі тапсырыс берілген азық-түлік жазбасын жойғанда, сонымен бірге тапсырыс, сатып алушы жайлы да мәліметтер жойылады.
Егер тапсырыс беруші мекен-жайын өзгертсе, ол тапсырыс берген азық-түлік жайлы бірнеше жазбаларды жаңарту керек (әйтсе де, олар алдыңғыға қарағанда азырақ).
Бұл аномалияларды үшінші нормалды формаға өтумен жоюға болады.
Айтуы бойынша, реляционды кесте үшінші нормалды формада
орналасқан, егер ол екінші нормалды формада орналасса және оның барлық кіттік емес өрістері толығымен біріншілік кілтке тәуелді.
OrderDetails кестесі үшінші нормалды формада орналасқан. Кілттік емес Quantity сөзі толығымен біріншілік кілтке тәуелді (OrderID, ProductID). Дегенмен OrdersInfo кестесі үшінші нормалды формада орналаспайды, себебі кілттік емес өрістер тәуелдігі бар (ол транзитивті тәуелділік - transitive
Dependency деп аталады) – Address өрісі CustomerID өрісіне тәуелді.
Екінші нормалды формадан үшіншіге өту үшін келесілерді орындау
керек:
Басқа өрістер тәуелді болатын барлық өрістерді (немесе өріс топтарын) анықта.
Әрбір осындай бөлікке жаңа кесте құрып, оған тәуелді топтарды осы
кестеге көшіру. Барлық басқа өрістер тәуелді болатын өрістер жаңа кестенің біріншілік кілті болады.
Сыртқы кілт болатындар басқа келесі кестеге көшірілген алғашқы өрістерді жою.
Қалыпқа келтірудің артықшылығы
Нормалау артық мәліметтерден сақтайды, ол сақталатын мәліметтер өлшемін төмендетіп, жоғарыда айтылған аномалилар мен олардың өзгерісінен құтылуға мүмкіншілік береді. Мысалы, жоғарыда көрсетілген мәліметтер базасын үшінші нормалды формаға келтірген соң келесі жақсарулар байқалды:
Тапсырыс берушінің мекен – жайын, ол ешқандай тапсырыс бермесе де мәліметтер базасында сақтауға болады.
Тапсырылған азық жайлы мәліметті тапсырыс беруші және тапсырыс жайлы мәліметті жойып алам деген қоқынышсыз өшіре беруге болады.
Тапсырыс беруші мекні немесе тіркелу күнін өзгертсе, тек бір жазбаны ғана өзгерту керек болады.
«Мән – байланыс» диаграммасы
Мәліметтер базасын нақты жобалау құрылымында семантикалық модельдеу деп аталатын басқа әдіс қолданылады. Семантикалық модельдеуде осы мәліметтерге сүйенетін мәліметтер құрылымынан тұрады. Семантикалық модельдеу құралы ретінде әртүрлі нұсқадағы мәліметтер базасының концептуалды үлгідегі «мән-байланыс (ERD - entity-relationship diagrams)» диаграммалары қолданылады. Мәліметтерді жобалауда ER-
Диаграммалары құрылады, олар визуалды мәнін көрсетіп және тышқанның көмегімен байланыстырады. Мұндай құралдардың интерфейсі әдетте қарапайым болады, логикалық жобалау тек құрастушыға ғана емес, пайдаланушы-программист емеске де оңай түседі.
«Мән-байланыс» Entity-Relationship diagrams, или E/R diagram) диаграммасы база сұлбасын концептуалды деңгейде жобалауға арналған. Әдіс 1976 жылы Питер Пин Шань Ченмен (Peter Pin Shan Chen) ұсынылған. «Мән-байланыс» диаграммаларында мәндері тікбұрыштармен, ассоциациясы – ромб немесе алтыбұрышмен, атрибуттары – доға түрінде, ал арасындағы байланыс үстіне байланыс деңгейі және керек анықтама тұратын бағытталмаған қабырға түрінде болады («көп» сөзін алмастырушы 1 немесе әріп) (7-сурет).
Сур.7. «мән-байланыс» диаграммасы
Достарыңызбен бөлісу: |