Деректердегі негізгі операциялар 


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



ЗНАЕТЕ ЛИ ВЫ?

Деректердегі негізгі операциялар



Деректерді көрсету сұрақтары осы деректертің көмегімен өңделетін операциялармен тығыз байланысты. Ондай операциялардың қатарына келесілер жатады:

- таңдау,

- өзгерту,

- қосу

- деректерді алып тастау.

Барлық аталған операциялар негізінде көрсетілу тәсілінен тәуессіз қарастыруға болмайтын қатынас операциясы жатыр.

Іздеу тапсырмаларында барлық деректер анықталған идентификациялы жадыда сақталады, қатынас туралы айтқанда ең алдымен деректер жиынтығымен байланысқан идентификациялаушы деректерге қатынаса алады.

Бірдей жазбалар тізімінен тұратын файлға қатынас орнату керек делік, олардың әрқайсысы кілттік сөздік тиімді мәніне ие. Іздеудің ең қарапайым тәсілі – іздеу критериін қанағаттандыратын кілт мәні табылғанша файлдан әрбір жазбаны қарастырады. Әрине, бұл тәсіл аса тиімді емес, бірақ файлдар жазбада кілттік сөз мәні бойынша реттелмеген. Файлдағы жазбаларды реттеу үлкен уақыт шығынын талап ететіндігіктен және әрбір жазбаны енгізгеннен кейін орындалу керек болғандықтан қолданылмайды. Сондықтан, сұрыптау және іздеу операцияларын жылдам орындауға мүмкіндік беретін сәйкес жазбалар файлда басқа құрылымға көшіріледі. Деректерге қатынасқан кезде осы құрылымның басында сәйкес кілт мәндері табылады, ал содан кейін онымен бірге сақталатын көрсеткіштер файлдан жазбаларды алады.

8.8. Деректер моделін таңдау

Кірделі деректер типінің көптеген түрлері бар, бірақ үлкен тәжірибелік материалда жүргізілген зерттеулер олардың арасынан бірнеше жалпылама түрлерін ерекшелеп алуға болтынын көрсетті. Жалпыланған құрылымдар нақты әлемнің деректері туралы көрсетілімдерді сипаттайтындықтан деректер моделі деп те аталады.

Кез-келген деректер моделі үш компоненттен тұруы керек:

1. деректер құрылымы – деректерді көрсету үшін қолданушы көзұарасын сипаттайды.

2. Деректер құрылымында орындалатын жіберілетін операциялар тізімі. Деректер моделі кем дегенде сақтау құрылымын сипаттайтын деректердің анықтау тілінің болуын, деректерді модификациялау және жою операцияларын қосатын деректердің манипуляциялау тілінің болуын жобалайды.

3. Біртұтастықтың шектеулігі – формальдысипатталған ережелер негізінде пәндік аймақтың сәйкес деректерін қолдау механизмі.

ДҚБЖ-де тарихи даму үдерісінде келесі деректер моделі қолданылды:

 иерархиялық

 желілік

 реляционды

Деректердің реляционды моделі қатынастардың және кестедегі көрсетіліміне, сонымен қатар байланыстар арасындаға қатынастарға байланысты. Деректердің реляционды моделін еі алғашқы рет Кодд ұсынған. Деректерді құрылымдау бір ғана құралы релыциондық модельде қатынас болып табылады. Қатынастар барлық жиын қасиеттеріне ие.

Деректердің желілік моделі кестелік және графтық көрсетілімдерде орнатылады. Граф төбелеріне кесте түрінде көрсетілетін кейбірнегіз типтері сәйкес келеді, ал доғаларға байланыс функционалды болатын байланыс типтері сәйкес келеді.Желілік модельдің шектеуі М:N типті төбелер арасындағы көрсетілімдерден тұрады.

Деректердің иерархиялық моделі реттелген бұтақпен көрсетіледі. Егер ішкі бұтақтардың қатысты реті, яғни төбелердің орналасу қатынасы маңызды болса, бұтақ реттелген деп аталады. Бұдан басқа функционалды байланыстарға сәйкес келуші доғалар үнемі түбірден бұтақ жапырақтарына бағытталған. Мұндай құрылымды диаграмма деректерді анықтаудың иерархиялық бұтағы деп аталады.

 

Өзін өзі тексеру сұрақтары

1. Деректер моделі деген не?

2. Деректер моделінің компоненттері

3. Деректер моделінің классификациясы

4. Инверттелген тізімдерге негізделген жүйе сипаты (деректер құрылымы, деректерді манипуляциялау операторы, біртұтастық шектеулері)

5. Иерархиялық жүйе сипаты

6. Желілік жүйе сипаты

Дәріс 9. Деректердің реляциялық моделі

 

Қатынастардың фундаменттік қасиеті. Деректердің реляциялық моделі. Негізгі анықтамалар: кестелер, атрибуттар, кортеждер, кілттер – суперкілт, потенциалды кілт, бастапқы кілт, сыртқы кілт, рекурсивті кілт.

Дәрісте қазіргі уақытта кең таралған ДҚБЖ деректер моделінің қалыптасуымен байланысты сұрақтар, яғни реляционды модель қарастырылады. Мұнда реляционды модельдегі қалыптасқан қатынастар сипаты және деректерді манипуляциялау құралдары қарастырылады.

Дәрістің мақсаты: реляционды модельдің қалыптасқан сипатын және деректер қорына сұраныс тілін құру негізі мен деректер қрын жобалаудың математикалық тәсілдерін қолдану үшін деректерді манипуляциялау операциясының негңзң ретңнде қарастыру.

9.1 Реляционды деректер қорының базалық түініктері

Алдыңғы бөлімде көрсетілген желілік және иерархиялық модельдердің кемшілігін ескере отырып, деректер моделінің қалаулы талаптарын қалыптастыруға болады:

• Бағдарламалауда ерекше икемдері жоқ модель қолданушыға түсінікті болу керек;

• Деректерді қолданудың жаңа аспектілерінің пайда болуы және жаңа байланыстарды енгізу қажеттіліктері барлық деректер моделі мен жалпы деректер қорын құрылымдануға алып келмеу керек.

Жоғарыда көрсетілген талаптарды қанағаттандыратын деректер моделі реляционды модель немесе кестелік модель деп аталады.

Мұндағы негізгі түсінік болып құтынас түсінігі қолданылады, оның бағандары негіз атрибуттарына сәйкес келетін кете түрінде көрсетіледі (кете жолының құрылымы жазба құрылымына аналогты). Әрбір атрибут домен деп аталатын белгілі жиындар мәнін қабылдай алады. Нақты өріс мәндері бар кесте жолын кортеж деп атайды («жазба нұсқасы» түсінігіне сәйкес келеді). Кесте жолдары қарапайым болады. Демек, «кесте» түсінігі деректер моделінің «файл» түсінігіне сәйкес келеді. Мұндағы бастапқы кілт – қатынастағы кортежді идентификациялайтын атрибуттардың минималды тізімі.

Топтық қатынастар екі тәсілмен көрсетілуі мүмкін. Бірінші тәсілде кестелердегі сәйкес топтарға, яғни қатынас мүшелеріне басқа қатынас мүшелерінің кілттік өріс (атрибут) бағандары қосылады. Екінші тәсілде топтық қатынас қосымша топ (кесте) ретінде анықталады. Осы қосымша кестенің бағандары қатынас топ–мүшелерінің кілттері болып табылады. Демек, кез келген тәсілде сәйкес деректер моделі кесте құрылымының жиынтығын құрады.

Реляционды деректер қоры терминіндегі ER-диаграмма (сурет 5.2) жазбасының мысалын қарастырайық.

Алдымен негіздерге сәйкес келетін кестені көрейік.

Столбцами этой дополнительной таблицы являются ключи групп – членов отношения. Таким образом, при любом способе соответствующая модель данных представляет собой совокупность структур таблиц.

СТУДЕНТ кестесі

Код Тегі Туған мерзімі Туған жері

ФАКУЛЬТЕТ кестесі

Номер Атауы

МАМАНДЫҚ кестесі

Номер Атауы

Байланыстарды сипаттайтын кестелерді көрейік.

"Студент факультетте оқиды" кестесі

Студент коды Факультет номері

"Студент мамандық бойынша оқиды" кестесі

Студент коды Мамандық номері

"Факультетте мамандықтар бар" кестесі

Факультет номері Мамандық номері

 

Мұнда жоғарыда сипатталған топтық қатынастардың екінші тәсілі көрсетілгенігін ескеру керек. Сәйкес ER-диаграмманы көрсететін көптеген нұсқаларды құруға болатыны белгілі.

Келтірілген кестелер үшін атрибуттар домені көрсетілмеген.

Домендер көрсеткішінің болмауы кесте құрамының бірмәнді емес интерпретациясына алып келеді. Мысалы, бірдей атрибуттары бар екі кестенің екі түрлі мәндік мағынасы, сәйкесінше, әр түрлі мағына да (бір кестеде факультеттің барлық студенттері туралы, екінші кестеде тек факультет старосталары туралы мәліметтер болады) болуы мүмкін.

 

Студент коды Тегі Туған мерзімі Туған жері

 

Бір мағыналы емес интерпретацияны жою үшін домендер көрсеткіші (СТУДЕНТ; СТАРОСТА) кесте атауларын қолданады.

Кестені формальды сипаттау үшін теоретико-жиындық қатынас түсінігі қолданылады.

R қатынасының сұлбасы деп домендері көрсетілген атрибут қатынас атрибуттарының атауларының тізімі аалады және белгіленеді, мұндағы {Ai} – Ai(i=1,n) атрибутымен қабылданатын жиындар мәні.

Концептуалды модельді көрсету үшін қолданылатын қатынас сұлбасының жиынтығы реляционды деректер қорының сұлбасы деп аталады, ал сәйкес қатынастардың ағымдық мәндері реляционды деректер қоры деп аталады.

Реляционды модельдің негізгі кемшілігі ретінде байланыстарды көрсету кезіндегі ақпарат көшірмесін алуды айтуға болады.

Дербес ЕЭМ үшін көптеген ДҚБЖ реляционды деректер моделін қолдайтынын міндетті түрде ескеру керек. Мұндай таратылған ДҚБЖ мысалы ретінде барлық dBase-ұқсас жүйелерді, DB2, Paradox, Access, FoxPro, Oracle, MS SQL Server көрсетуге болады.

Реляционды модель келесі дәрісте толық қарастырылады.

9.2 Қалыптасқан қатынас сипаты және қатынас сұлбасы

Жоғарыдаайтылғандай, реляционды модель қатынас деп аталатын екі өлшемді кесте түрінде деректер көрсетілімін сипаттайды. Бұл кестенің баған атаулары ретінде атрибуттар атауы қызмет етеді. Сәйкс түсініктердің қалыптасқан сипатын қарастырайық.

A1, A2,..., Aатрибут атаулары болсын делік.Әрбір Ai атрибут атауына Ai. атрибутын қабылдай алатын жіберілетін жиын мәні сәйкес келеді. Бұл Di жиын мәні Ai, i=1,n атрибутының домені болып табылады. Анықтама бойынша домендер бос емес соңғы немесе есептеуіш жиындар болып табылады. Реляционды деректер қорының теориясында домен бір деректер типінің жиынмәніретінде қарастырылады. Di домен түсінігіне қарастырылатын кестенің Ai бағанында тұратын жиын мәнсәйкес келеді.

R {A1, A2,..., An} қатынас сұлбасы {A1, A2,..., An} атрибут атауының соңғы жиыны аталады, мұндағы Ai атрибуты Di (i=1, 2,..., n) жиын мәнін қабылдайды, n – қатынас.

«Қатынас сұлбасы» түсінігіне екі өлшемді кесте құрылымының сипаты сәйкес келеді (бағандар атауы және жіберілетін жиын мәндері).

болсын делік.

R сұлбалы r қатынасы сияқты жиынындағы R: {A1, A2,..., An} жиынынан {t1, t2,..., tp} соңғы бейнелер жиыны деп аталады.

tk сипаты k –кортежі деп аталады, n – кортеж өлшемі.

k –кортежінің түсінігіне растырылатын кестенің k – жолында тұрған жиын мәні сәйкес келеді.

R қатынасының түсінігіне қарастырылатын кестенің барлық жолдарында тұратын жиын мәндері сәйкес келеді.

R сұлбалы r қатынас кілті деп минималды ішкі жиын аталады, мұндағы K ={Ai1, Ai2,..., Aim} жиын мәні бойынша сәйкес келмейтін кез келген екі тұрлі кортеж болып табылады.

R қатынасының бірнеше кілті болуы да мүмкін. Мұндай кілттер потенциалды (мүмкін) деп аталады. Олардың ішінен кортеж идентификциясы үшін таңдарған кілт бастапқы кілт деп аталады. Демек, бір мәнді идентификациялау үшін К жиынында кортеж мәнін білген жеткілікті. Кілт қатынастар арасындағы байланысты көрсету үшін қолданылады. Осы мақсатта бір қатынастың бастапқы кілті онымен байланысты қатынас құрылымына қосылады. Екінші қатынас үшін сәйкес кілт сыртқы кәлт деп аталады.

Концептуалды модельді көрсету үшін қолданылатын қатынас сұлбасының жиынтығы реляционды деректер қорының сұлбасы деп аталады. Сәйкес қатынастардың ағымдық мәндері релыционды деректер қоры деп аталады.

Алдыңғы дәріс мысалынан деректердің реляциялық моделін жазып алайық (сурет 6.3). Барлық сәйкес келетін негіздердің атрибуттар белгілеулерін енгізейік. A1 – студент коды, A2 – тегі, A3 – туған мерзімі, A4 – туған жері, A5 – факультет номері, A6 – факультет атауы, A7 – мамандық номері, A8 – мамандық атауы болсын делік. СТУДЕНТ қатынас сұлбасын R1 деп, ФАКУЛЬТЕТ сұлбасын R2 деп, СТУДЕНТ ФАКУЛЬТЕТТЕ ОҚИДЫ сұлбасын R4 деп, СТУДЕНТ МАМАНДЫҚ БОЙЫНША ОҚИДЫ сұлбасын R5 деп, ФАКУЛЬТЕТТЕ МАМАНДЫҚТАР БАР сұлбасын R6 деп белгілейік.

Сонда сәйкес мысалдың реляционды модель келесідей қатынас сұлбасының жиынтығымен сипатталады:

R1(A1, A2, A3, A4)

R2(A5, A6)

R3(A7, A8)

R4(A1, A5)

R5(A1, A7)

R6(A5, A7)

«Қатынас сұлбасы» түсінігі кесте құрылымының сипатына сәйкес келеді. Мәндері толтырылған кесте «қатынас» түсінігіне сәйкес келеді. Берілген қатынас мысалы үшін жоғарыда көрсетілген сұлбаларға сәйкес қатынастарды келесідей белгілейміз:

r1, r2, r3, r4, r5, r6,

Келесі қатынас қасиеттерін анықтайық:

• Барлық басқа қатынастар атауынан ерекшеленетін қатынас атауы болады.

• Кортеж элементтерінің әрбір мәні қарапайым деректер типәмен көрсетіледі.

• Әр атрибуттың ерекше атауы бар.

• Барлық атрибуттар мәні атомарлы (бөлінбейтін) болады. Қарапайым деректер типінің мәндер жиыны ретінде домен анықтамасынан қарастырылады, яғни домен мәндерінің арасында жиындар да болуымүмкін.

• Қатынас сұлбасында атрибуттарды қарастыру ретінің ешбір мәні жоқ, яғни қатынас кортежінде атрибут мәніне сілтеме жіберу үшін үнемі атрибут атауы қолданылады.

Қатынастағы кортежді қарастыру ретінің мәні жоқ, себебі қатынас кортеж жиындарынан тұрады, ал жиын элементтері жиындарды анықтау теориясы бойынша реттелмеген.

Кең таралған реляционды деректер моделінің трактовкасы Дейтке тиесілі. Дейттің пікіріне сәйкес реляционды модель реляциондық жақындаудың түрлі аспектілерін сипаттайтын үш бөлімнен тұрады: құрылымдық бөлім, манипуляциялық бөлім және біртұтас бөлім.

Құрылымдық бөлімде модель тіркеледі, реляционды ДҚ қолданылатын бір ғана деректер құрылымы қалыптасқан n-қатынасы болып табылады. Модельдің манипуляциялық бөлімінде реляционды ДҚ манипуляциялайтын екі фундаменттік механизмі бекітіледі – реляционды алгебра және реляционды есептеу.

Бастапқы механизм жиындардың классикалық теориясы негізінде, ал екіншісі бірінші қатардағы предикаттарды есептеудің логикалық аппаратына негізделген. Реляциялық модельдің манипуляциялық бөлігінің негізгі функциясы реляциялық ДҚ кез келген нақты тілінің реляциялық шараларын қамтамасыз ету болып табылады: тіл реляциялық деп аталады, егер ол реляциялық алгебра немесе реляциондық есептеуге қарағанда анықтылығы мен қуатты аз болса.

Реляционды деректер моделінің бүтін бөлігінде біртұтастықтың екі негізгі талабы тіркеледі, олар кез келген ДҚБЖ қолдау көрсету керек. Бастапқы талап негіз біртұтастығының талабы деп аталады. Нақты әлемнің реляциялық ДҚ объект немесе негіздер қатынас кортеждеріне сәйкес келеді. Талаптар кез келген қатынас кортежінің басқа қатынас кортежінен айырмашылығы, яғни басқаша айтқанда кез келген қатынастың бастапқы кілті болу керек. Екінші талап сілтеме бойынша біртұтастық талабы болып табылады және күрделі болады. Демек, нақты әлемнің күрделі негіздері реляционды ДҚ-да бірнеше қатынастардың бірнеше кортеждері түрінде көрсетіледі. Мысалы, реляционды деректер қорында БӨЛ_НОМЕРІ (бөлім номері) атрибуттары барБӨЛІМ негізі түрінде, БӨЛ_САНЫ (қызметшілер саны) және БӨЛ_ҚЫЗМ (бөлім қызметшілерінің тізімі). Әрбір қызметші үшін ҚЫЗМ_НОМЕРІ (қызметші номері), ҚЫЗМ_АТЫ (қызметші аты) және ҚЫЗМ_ЖАЛ (қызметшінің жалақысы) сақталуы керек. Сәйкес ДҚ дұрыс жобалау үшін онда екі қатынас пайда болады: БӨЛІМДЕР (БӨЛ_НОМЕР, БӨЛ_САН) (бастапқы кілт - БӨЛ_НОМЕР) және ҚЫЗМЕТШІЛЕР (ҚЫЗМ_НОМЕР, ҚЫЗМ_АТЫ, ҚЫЗМ_ЖАЛ, ҚЫЗМ_БӨЛ_НОМ) (бастапқы кілт - ҚЫЗМ_НОМЕР). Көрініп тұрғандай ҚЫЗМ_БӨЛ_НОМ атрибуттарында ҚЫЗМЕТШІЛЕР қатынасы пайда болады, бөлім номері қызметшінің жеке қасиетіне ие болғандықтан емес, қажет жағдайда БӨЛІМ негізін толық қалпына келтіру мүмкіндігіне байланысты. ҚЫЗМ_БӨЛ_НОМ атрибутының мәні кез келген ҚЫЗМЕТШІЛЕР қатынас кортежінде БӨЛІМ қатынасының кейбір кортежінде БӨЛ_НОМ атрибут мәніне сәйкес келу керек.Мұндай атрибуттар сыртқы кілт деп аталады, себебі оның мәні кейбір басқа қатынас кортеждерімен көрсетілген (бастапқы кілттің мәні беріледі) бірмәнді негізбен сипатталады. Сыртқы кілт анықталған қатынастар бастапқы кілт атрибуты болып табылатын сәйкес қатынастарға сілтенеді.

Реляционды деректер қорының негізгі түсініктері деректер типі, домендер, атрибут, кортеж, бастапқы кілт және қатынас болып табылады.

Алдымен осы түсініктерді кейбір ұйымның қызметшілері туралы ақпараттан тұратын (сурет.9.1) ҚЫЗМЕТШІЛЕР қатынасының мысалында қарастырып көрейік:

 

 

Сурет 9.1 «Қызметшілер» қатынасы

Деректер типі

Деректердің реляционды моделіндегі деректер типі түсінігі бағдарламалау тіліндегі деректер тпі түсінігіне адекватты. Әдетте заманауи реляционды ДҚ символды, сандық деректерді, биттік жолдарды, арнайыландырылған сандық деректерді, сонымен қатар «темпоральды» (мерзім, уақыт, уақыттық интервал) деректерді сақтауға болады. Абстрактілі деректер типі бар реляционды жүйе (сәйкес мүмкіндіктері мысалы, Ingres/Postgres жүйесі) мүмкіндіктерінің кеңейтілуіне жақындау қарқында даму үстінде. Біздің мысалда үштпті деректер қарастырылады: символдар жолы, бүтін сандар және «ақша».

Домен

Домен түсінігі кейбір бағдарламалау тілдерінде ішкі типтерге аналог болатын деректер қорына тән. Жалпы жағдайда домен кейбір деректер қоры типінің тапсырмасымен анықталады, оған домен элементтері және деректер типінің элементіне қолданылатын туынды логикалық өрнек жатады. Егер осы логикалық өрнектің есептелуі «ақиқат» нәтижесін берсе, онда деректер элементі домен элементі болып табылады.

Домен түсінігінің дұрыс трактовкасы берілген тип мәнінің жіберілетін потенциалды жиынын ретінде қарастырылады. Мысалы, «Атаулар» домені біздің мысалда символдар жолының базалық типінде анықталған, бірақ оның мәндерінің құрамына тек атауды бейнелей алатын жолдар ғана кіреді (көп жағдайда мұндай жолдар тек жіңішкелік белгісінен басталады).

Сондай-ақ, домен түсінігінің семантикалық жүктемесін де ерекшелеуге болады: деректер бірдоменге қатысты болғанда ғана салыстырмалы болып есептеледі. Біздің мысалда «Рұқсаттама номері» және «Топ номері» домендер мәні бүтін сандар типіне жатады, бірақ салыстырмалы болып табылмайды.

Қатынас сұлбасы, деректер қорының сұлбасы

Қатынас слбасы – бұл атаулы жиын жұптары {атрибут атауы, домен атауы (немесе типі, егер домен мәніне қолдау көрсетілмесе)}. Қатынас сұлбасының дәрежесі сол жиынның қуатын анықтайды. ҚЫЗМЕТШІЛЕР қатынасының дәрежесі төртке тең. Егер бір қатынастың барлық атрибуттары түрлі домендерде анықталса, сәйкес домендердің атауын атрибут атауы үшін қолдануға болады.

ДҚ сұлбасы (құрылымдық мағынада) – бұл қатынасссұлбасының атаулы тізімі.

Кортеж, қатынас

Берілген қатынас сұлбасына сәйкес келетін кортеж – бұл жұптар жиыны {атрибут атауы, мәні}, оның құрамында қатынас сұлбасына қатысты атрибут атына ену жүзеге асады. «Мәндер» берілген атрибутта жіберілген домен мәні болып табылады (немесе деректер типі, егер домен түсінігіне қолдау көрсетілмесе). Демек, кортеж дәрежесі, яғни ондағы элементтер саны сәйкес сұлбаның «арность»-на сәйкес келеді. Яғни, кортеж – бұл берілген типтің атаулымәндер тізімі.

Қатынас – бұл бірқатынас сұлбасына сәйкес келетін кортеждер жиыны. Кейде қатынас сұлбасын қатынас атауы деп те атйды, ал қатынас кортеж тізімі ретінде қатынас денесі болады.

Қарапайым қатынас көрінісі кесте болып табылады, ал оның атауы қатынас сұлбасы, жолдары – қатынас-нұсқа кортеждері; бұл жағдайда атрибуттар атауы сол кестенің бағандарын атап шығады. Сондықтан, кейде «қатынас атрибуты» түріндегі «кесте бағаны» деп атайды.

Реляционды деректер қоры – бұл атауы ДҚ сұлбасындағы қатынас сұлбасының атауымен сәйкес келетін қатынастар тізімі.

9.3 ДҚБЖ негізгі терезесі және деректер қорымен жұмыс жасау үшін басқару элементтері

 

Visual FoxPro-дағы деректер қоры – бұл кестелер (Table), көріністер (View) және олардың арасындағы қатынастар жиынтығы. ДҚ құрамына сондай-ақ, ДҚ-ғы деректер тұтастығын тексеретін күрделі ережелерді сипаттау үшін қолданылатын сақтаулы процедуралар (Stored Procedures), сонымен қатар, сыртқы деректер көзімен байланысу үшін қолданылатын бірігулер (Connections) кіреді. ДҚ файлдарының dbc кеңейтулері бар және олар құрамынакіретін компоненттер туралы ақпаратты сақтайды.

Visual FoxPro-да деректер қорын құру деректер қорын құрудың визуалды құралдарының көмегімен интерактивті режимде – келесідей мүмкіндік беретін ДҚ конструкторында (Database Designer) жүзеге асады:деректер көрсетілімін, сақталатын процедураларды, кестелерді құруға және модификациялауға; бос кестелерді енгізуге; кестелер үшін индекс анықтауға; формалар мен есептер құрғанда кестелер арасындағы қатынастарды орнатуға.

Деректер қорын құру үшін Visual FoxPro жүйелік мәзірінқолдана отырып ДҚ конструктор терезесін ашу керек. Ол үшін File (Файл) мәзірінде New (Новый) командасы таңдалып алынады.

Ашылған New диалогты терезесінде Database (Деректер қоры) опциясын орнатып және New file (Жаңа файл) пернесін басу керек. Create терезесінің Enter өрісінде құрылатын деректер қорының атауынберу керек. Файл типі өрісінде сақталатын dbс файлының типі орнатылғанына көз жеткізіп, ал Сақтау ашылатын тізімінде құрылатын деректер қоры орналасатын бума дұрыс көрсетіледі, Сақтау персесін басу керек.

Database Designer (деректер қорының конструкторы) деректер қорының бос терезесі ашылады (сурет 9.2). Database Designer саймандар тақтасын қолдана отырып, Database мәзір командасы және контестік мәзір қолдана отырып, деректер қорының констуктор терезесінде бос кестелерді қосуға, жаңа кестелер мен көріністер құруға, сәйкес кестелерді модификациялауға және жоюға, оларға индекс құруға, кестелер арасында бқатынас орнатуға мүмкіндік береді.

 

 

Сурет 9.2 - Database Designer терезесі

 

Деректер қорын құрудың басында деректер қорының конструктор терезесі бос болады. Деректер қорының конструкторында жаңа кестелерді құрып және сәйкестерін модификациялау үшін Database мәзір командаларын қолдануға болады:

· New Table (Жаңа кесте) – жаңа кестені құрады;

· Add Table (Кесте қосу) – деректер қорына алдын ала құрылған бас кестені қосады;

· New Remote View (Жаңа жойылған көрініс) – жойылған деректер көрінісін құрады;

· New Local View (Жаңа жергілікті көрініс) – жергіікті деректер көрінсін құрады;

· Modify (Модификациялау) – кесте конструкторында кестені ашады;

· Browse (Кесте сипаты) –Browse режимінде кесте құрамын көрсетеді;

· Remove (Жою) – деректер қорынан кестені жояды;

· Edit Stored Procedures (Сақталатын процедураларды өңдеу) – сақталатын процедураларды өңдеу терезесін ашады;

Деректер қоры конструкторының терезесінде жұмыс істеу үшін тышқанның сол жақ батырмасынбасу арқылы шақырылатын жанама мәзірді қолдануға болады. Ол жиі қолданылатын Database мәзір командасын, сұрау жүесінің шақырту командасын, сонымен қатар деректер қорының конструктор терезесінде объектілердің орнатылған деңгейлерін ашу және жабу үшін арналған команды Expand All (Барлығын ашу) и Collapse All (Барлығын жабу) командаларынан тұрады.

Database Designer саймандар тақтасы деректер қорында жиі қолданылатын пернелерден тұрады. Егер Database Designer саймандар тақтасы экранда көрінбесе, онда View (Түрі) мәзірінде Toolbars (Саймандар тақтасы) командасын таңдау керек. Toolbars диалогты терезесі ашылады, онда Database Designer бөлімінде жалауша қойылады.

Database Designer саймандар тақтасының түрі 9.3 суретте көрсетілген.

 

 

Сурет 9.3 - Database Designer саймандар тақтасы.

Қорытынды: Дәрісте қазіргі уақытта кең таралған ДҚБЖ деректер моделінің, яғни реляционды модельдің қалыптасуымен байланысты сұрақтар қарастырылды. Реляционды модельдің формальды сипатталуы және оның негізінде алынған математикалық тәсілдер және алгоритмдер реляционды деректер қорын жобалаудың қадамдар қатарын қалыптастыруға, тиімді деректер қорының құрылымы мен тиімді өңдеу алгоритмін алуға мүмкіндік береді. Мұнда қатынастардың қалыптасқан сипаты, реляциондық модельдегі деректерді манипуляциялау (реляциялық есептеу және реляциялық алгебра, реляциялық алгебраның негізгі операциялары) құралдары қарастырылады. Реляционды алгебраның тізбектеле қалыптасқан операциялары ретінде сұраныстар көрсетілімінің мысалы келтірілген.

Дәріс 10 Деректер қорының біртұтастығы

Деректер қорында біртұтастықты ұстанатын шектеу шарттары.Категориялы біртұтастық ережесі. Сілтемелер деңгейінде біртұтастық ережесі.

10.1. Біртұтастық шектеулері

Деректер қорының біртұтастық түсінігіне толық және пәндік аймақты адекватты сипаттайтын ақпарат жатады.

Деректер қорына енетін деректердің үлкен көлемі (деректер түрлі қолданушылармен енгізіле алады) енгізу қатесінің үлкен санын қамтамасыз етеді. Ақпаратты ұлттық «қағаздағы» өңдеу кезінде дұрыс жазылмаған

Деректер көп кездеседі. Бірақ, адамдар белгілі деректермен жұмыс істегенде бақылу үшән осы деректер туралы көріністерді қолданады. Мысалы, кадр бөлімінің қызметшісі жұмысшы картасынан 1693 жылы туылғандығы туралы ақпаратты көргенде бұл қатені бірден байқайды, нақты 1963 жылдың екі санының ауыстырылып тұрғандығын аңғарады. Яғни, қызметші көріністерінде деректерге кейбір логикалық шектеулер қолданылған. Демек, деректердің енгізу дұрыстығын бақылау үшін деректер қорымен жұмыс жасағанда мақсатты түрде шектеулерді қалыптастырып және қолдану керек.

Әдетте сәйкес шектеулерді үш топқа бөледі: сыртқы, арнайы бақыланатын және ішкі. Пәндік аймаққа осы ішкі бөлімде қысқаша сипатталатын бастапқы екі топ жатады. Ішкі шектеулер деректер қорына қатысты және деректер моделін арналған бөлімде қарастырылады.

Сыртқы шектеулер

Бұл шектеулер пәндік аймақтың адекватты сипатталуымен байланысты. Мысалы,ұйым қызметшісі 17-ден жас немесе 90-нан үлкен болуы мүмкін. Туған жылға (GR) байланысты сәйкес шектеулерді келесідей жазуға болады:

Ағымдық жыл – 17 > GR > Ағымдық жыл – 90.

Осы шектеулердің тәсілдерінің бірі қандай-да бір атрибуттың жіберілетін мәндерінің соңғы жиынын атап шығу болып табылады. Мысалы, жоғарғы оқу орнындағы оқытушы дәрежесі келесілердің біреуін қабылдайды: профессор, доцент, аға оқытушы, оқытушы, ассистент. Нақты нұсқа үшін аталған мәндердің біреуіне де сәйкес келмейтін, енгізілетін лауазым мәні қате болады.

Арнайы құрылымдар көмегімен сипатталған шектеулер

Мысалы, ЖОО деректер қорына студенттер мен оқытушылар саны туралы ақпарат енгізіледі. Нормативті құжаттар бойынша студенттер санының оытушылар санына қатынасының нақты мәні берілген. Осы қатынасты деректер жеткіліктілігін бақылау үшін тексеруге болады. Мұндай құрылымдар қарастырылатын пәндік аймақ деректерінің спецификасын құрудан шығады. Мысалы, келесі түрдегі көп құрылымдарды құруға болады: берілген атрибут бойынша мәндер қосындысы барлық негіз нұсқаларына байланысты басқа негіз нұсқасындағы анықталған атрибут мәнінен сәйкес келу керек.

Демек, ER-модельдеу сатысында деректер жеткіліктерінің артуы үшін деректерге сәйкес шектеулерді қалыптастыру керек. Сәтті жағдайда әрбір атрибут мәні бақылану керек. Бұл шектеулерді қолдану деректер қорындағы деректердің жеткілікті болуының артуына мүмкінд береді.

Сілтемелер бойынша біртұтастық талаптары немесе сыртқы кілт талаптары қатынасқа сілтеме жасауға мүмкіндік беретін сыртқы кілттің әрбір мәні үшін сондай бастапқы кілті бар кортеж табылу керек, немесе сыртқы кілт мәні белгісіз болу керек. Біздің мысал үшін егер қызмтшіге бөлім номері көрсетілсе, онда бөлім болу тиіс.

Негіз біртұтастығының шектеуі және сілтеме бойынша ДҚБЖ қолдау көрсету керек. Негіз біртұтастығын қадағалау үшін кез келген кортеж қатынасында бастапқы кілттің бір ғана мәнінің болмауына кепілдік беруі керек. Сілтеме бойынша біртұтастық кішкене күрделірек болады.

Сілтенетін қатынас жаңарған кезде (жаңа кортеждерді енгізу немесе бар кортеждерде сыртқы кілт мәнін модификациялау) сыртқы кілттің ұсқынсыз мәнінің пайда болуын қадағалау керек. Бірақ, сілтеме жасалатын қатынастағы кортежді жойғанда не болады?

Мұнда сілтеме бойынша әрқайсысының біртұтастығына қолдау көрсетілетін үш жақындау бар. Бірінші жақындау сілтеме жасалатын кортежді жоюға тыйым салумен шектеледі (яғни, алдымен сілтенетін кортеждерді жою керек немесе олардың сыртқы кілттерінің мәнін сәйкесінше өзгерту керек). Сілтемелері бар кортеждерді жойған кездегі екінші жақындауда барлық сілтенетін кортеждерде сыртқы кілт мәні автоматты түрде белгісіз болады. Енді, үшінші жақындауда (каскадты жою) сілтемеге апаратын қатынастанкортежді жою кезінде сілтенетін қатынастан автоматты түрде барлық сілтенетін кортеждер жойылады.

10.2. Реляционды модельдің бүртұтастық бөлігі. Қазіргі ДҚБЖ деректер біртұтастығының жүзеге асу шарттары.

Деректре қорының біртұтастығы ретінде пәндік аймақты толық және адекватты бейнелейтін ақпарат. Реляционды ДҚ біртұтастығын қолдану келесі талаптарды орындауға негізелген.

1. Бірінші талап негіз біртұтастығының талабы деп аталады. Реляционды деректер қорындағы нақты әлем негізі немесе объектісі қатынас кортеждеріне сәйкес келеді. Нақты талап катынастың кез келген кортежін осы қатынастың кез келген басқа кортежінен ерекшелеуде. Егер жүйеде қатынастың базалық қасиеттері бұзылмаса, бұл талап автоматты түрде қанағаттандырылады.

2. Екінші талап сілтеме бойынша біртұтастық талабы деп аталады. Егер қатынастардың қалыптандыруларын қадағалаған кезде нақты әлемніңкүрделі негіздері реляционды ДҚ бірнеше қатынастардың бірнеше кортежі түрінде көрсетілетіні анық. Қатынастар арасындағы байланыс кілт миграциясы көмегімен жүзеге асады.

Сыртқы кілттің мысалы.

СТУДЕНТ (Студент коды, Тегі) ЕМТИХАН тапсырады (Студент коды, Пәні, Бағасы).

ЕМТИХАН негізінің Студент коды атрибуты сыртқы кілт деп аталады, оның мәні кейбір басқа қатынас кортеждерімен яғни Студент қатынасымен көрсетілетін негіздерді сипаттайды (Студент коды өрісі Студент қатынасының кілті болып табылады).

Сыртқы кілті анықталған қатынастар осындай атрибут сыртқы кілт болатын сәйкес қатынастарға сілтенеді.

Сілтеме бойынша біртұтастық талабы немесе сыртқы кәлттің талабы сілтеме баратын қатынастағы сілтенетін қатынастың әрбір ыртқы кілт мәні үшін бастапқы кілт мәні бар кортеж табылуы тиіс немесе сыртқы кілт мәні белгісіз болу керек.



Поделиться:


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

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