Компоненттердің қасиеттерінің мәндері



Жұмыс түрі:  Материал
Тегін:  Антиплагиат
Көлемі: 283 бет
Таңдаулыға:   
І. ЖАНСҮГҮРОВ АТЫНДАҒЫ ЖЕТІСУ МЕМЛЕКЕТТІК УНИВЕРСИТЕТІ

К.Н.Нуриденова, А.О.Алдабергенова, Н.С.Уалиев

DELPHI-ДЕ
ДЕРЕКТЕР ҚОРЫМЕН ЖҰМЫС

Оқу-әдістемелік құрал

Талдықорған, 2015
1

УДК 004.4(075)
ББК 32.973.26-018.2я73 Н83

І.Жансүгіров атындағы Жетісу мемлекеттік университетінің оқу- әдістемелік кеңесімен баспаға ұсынылған (10.06.2015ж. № 6 хаттамасы)

Пікір жазғандар:
Қ.Сатпаев атындағы Қазақ Ұлттық техникалық университеті Информатика кафедрасының доценті, ф.-м.ғ.к. К.В.Тұрмағамбетова
І.Жансүгіров атындағы Жетісу мемлекеттік университетінің Математика және математиканы оқыту әдістемесі кафедрасының профессоры, п.ғ.д. С.М.Сеитова.
І.Жансүгіров атындағы Жетісу мемлекеттік университетінің Ақпараттық технологиялар кафедрасының аға оқытушысы, PhD А.А.Шалтабаев.

Нуриденова К. Н., Алдабергенова А.О., Уалиев Н. С.
Н83 Delphi-де деректер қорымен жұмыс: оқу-әдістемелік құрал.
Талдықорған: ЖМУ баспа бөлімі, 2015. -289 бет.
ISBN 978-601-616-269-1

Оқу-әдістемелік құралда жалпы деректер қорының негізгі түсініктері және Delphi жүйесінің құралдары мен визуалды программалау технологиясының көмегі арқылы деректер қорымен жұмысқа арналған қолданбалар жасау жолдары қарастарылған. Нақтылы деректер қорымен жұмысқа арналған қолданбалар болып табылатын көптеген мысалдар келтірілген. Оқырман Delphi жүйесінің негізімен және Object Pascal тілімен таныс деп есептеледі.
Оқу-әдістемелік құрал Ақпараттық жүйелер, Деректер қоры,
Деректер қорын басқару жүйелері, Визуалды программалау құралдары және т.б. деректер қорын оқытумен байланысты пәндер оқылатын жоғары оқу орындарының студенттері мен магистранттарына арналған.

УДК 004.4(075) ББК 32.973.26-018.2я73

ISBN 978-601-616-269-1

(C) К. Н. Нуриденова, А.О. Алдабергенова, Н.С.Уалиев, 2015
(C) КАО баспа бөлімі. Талдықорған, 2015

2

МАЗМҰНЫ
КІРІСПЕ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 7
1 ДЕРЕКТЕР ҚОРЫНЫҢ НЕГІЗГІ ТҮСІНІКТЕРІ. 8
1.1 Деректер қоймалары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... 8
1.2 Деректер қорын ұйымдастыру модельдері 9
1.3 Деректер қорлары мен қолданбалар 9
1.4 BDE үшін архитектуралық нұсқалар ... ... ... ... ... ... ... ... ... ... .. 10
Тест сұрақтары 15
2 РЕЛЯЦИЯЛЫҚ ДЕРЕКТЕР ҚОРЫМЕН ЖҰМЫС І СТЕУ
ҚҰРАЛДАРЫ ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 17
2.1 Реляциялық деректер қорының негізгі элементтері 17
Деректер қоры кестелері ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... .. 17
Кілттер мен индекстер ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... 18
Деректер қорына қатынаудың әдістері мен тәсілдері 20
Кестелер арасындағы байланыс ... ... ... ... ... ... ... ... ... ... ... ... ... . 21
Транзакция механизмі ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... .. 23
Бизнес - ережелер 24
Мәліметтер сөздігі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 24
2.2 Реляциялық деректер қорымен жұмыс і стеуге арналған құралдар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 2 5
Аспаптық құралдар 25
Компоненттер 26
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 31
3 DELPHI-де АҚПАРАТТЫҚ ЖҮЙЕ ҚҰРУ ТЕХНОЛОГИЯСЫ. 34
3.1 Деректер қорының кестелерін құру ... ... ... ... ... ... ... ... ... ... ... . 34
Өрістер сипаттамасы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 36
Индексті анықтау 37
Өріс мәндеріне шектеу қою 39
Сілтемелік тұтастық беру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 40
Пароль беру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 42
Тілдік драйверді беру 44
Мәндер таңдау кестесін беру ... ... ... ... ... ... ... ... ... ... ... ... ... ... 44
3.2 BDE қолданбасын құру 45
Тест сұрақтары 49

4
52
ДЕРЕКТЕРГЕД ҚАТЫНАУ КОМПОНЕНТТЕРІ ... ... ... ... .

4.1 Деректер жиынтығы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
52
Деректер жиынтықтарының күйлері ... ... ... ... ... ... ... ... ... ... ... ...
55
Деректер жиынтығының режимдері ... ... ... ... ... ... .. ... ... ... ... ... ...
59
Өрістерге қатынау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
67
Table деректер жиынтығының ерекшеліктері ... ... ... ... ... .. ... ... ...
63
Query деректер жиынтығының ерекшеліктері ... ... ... ... ... .. ... ...
71
4.2 Өріс объектілері ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
74
Өрістер редакторы ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ..
76
Өрістермен орындалатын амалдар ... ... ... ... ... ... ... ... ... ... ... ...
84
4.3 Деректер көзі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
95
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ...
98
5 МӘЛІМЕТТЕРМЕН ЖҰМЫСҚА АРНАЛҒАН ВИЗУ АЛДЫ КОМПОНЕНТТЕР ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 108

5.1 Логикалық өрістің мәнін бейнелеу және жөндестіру ... ... ... ... ..
5.2 Өріс мәндерін бейнелеу және таңдау ... ... ... ... ... ... ... . ... ... ...
5.3 Өріс мәндерін бейнелеу және тізімнен таңдау ... ... ... ... ... ... ...
Жәй және аралас тізімдер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
Деректер жиынтығы өрісінің мәндері бойынша құрылған тізімдер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
5. 4 Жазбаларды кесте түрінде ұсыну ... ... ... ... ... ... ... .. ... ... ... ...
Тор сипаттамалары ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... .
Тордың бағаналары ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... ...
Түрлендірілген торды қолдану ... ... ... ... ... ... ... ... ... ... ... ... ... ...
5.5 Навигациялық интерфейсті қолдану ... ... ... ... ... ... ... ... ... ... .
5.6 Графикалық суреттерді шығару ... ... ... ... ... ... ... . ... ... ... ... ... .
5.7 Диаграммалар құру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
6 BDE МЕХАНИЗІМІНІҢ КӨМЕГІМЕН МӘЛІМЕТ ТЕРГЕ
109
110
111
111

112
113
113
117
123
127
129
133
134

ҚАТЫНАУДЫҢ НАВИГАЦИЯЛЫҚ ТӘСІЛІ. 141

6.1 ДҚ кестелерімен амалдар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
Кестелерді құру, өшіру және атын өзгерту ... ... ... ... ... ... ... ... ...
Қатынау деңгейін орнату ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... .
6.2 Деректер жиынтығын сорттау ... ... ... ... ... ... ... ... ... ... ... ... ... ..
6.3 Деректер жиынтығы бойымен жылжу ... ... ... ... ... ... ... .. ... ...
Жазбалар бойынша жылжу ... ... ... ... ... ... ... .. ... ... ... ... ... ... ...
Қаттамалар бойынша өту ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
6.4 Жазбаларды сүзу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
Өрнек бойынша сүзу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Аралық бойынша сүзу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Псевдосүзу арқылы жылжу ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ..
6.5 Жазбаларды іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
141
142
144
145
148
148
158
161
161
168
173
174

Деректер жиынтығында іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... ...
Индекстік өрістер бойынша іздеу ... ... ... ... ... ... ... .. ... ... ... ... .
6.6 Деректер жиынтығын модификациялау (өзгерту) ... ... ... ... ... ...
Жазбаларды жөндестіру ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... .
Жазба қосу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Жазбаларды өшіру ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ...
Қолданба формасының мысалы ... ... ... ... ... ... ... . ... ... ... ... ... ... ..
6.7 Өзара байланысқан кестелермен жұмыс ... ... ... ... ... ... ... .. ... .
Қолданба мысалы ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... ...
Транзакция механизімін қолдану ... ... ... ... ... ... ... ... ... ... ... ... ... .
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
7 BDE МЕХАНИЗІМІНІҢ КӨМЕГІМЕН ДЕРЕКТЕ Р ҚОРЫНА
174
182
184
186
192
194
196
203
204
213
215

ҚАТЫНАУДЫҢ РЕЛЯЦИЯЛЫҚ ТӘСІЛІ. 222

7.1 SQL тілі жайлы негізгі мағлұматтар ... ... ... ... ... ... ... ... ... ... ... ..
7.2 SQL тілінің функциялары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
7.3 Мәліметтерді анықтау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
Кесте құру және өшіру ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
Кесте өрістерінің құрамын өзгерту ... ... ... ... ... ... ... ... ... ... ... ... ...
Индекс құру және өшіру ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ...
7.4 Кестелерден мәліметтерді таңдау ... ... ... ... ... ... ... . ... ... ... ... ... .
Select нұсқауының сипаттамасы ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Өрістерді басқару ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Жазбаларды таңдаудың қарапайым шарттары ... ... ... ... ... ... ... ...
Жазбаларды таңдаудың күрделі шарттары ... ... ... ... ... ... ... ... ... ..
Жазбаларды топтау ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... ...
Жазбаларды сорттау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Кестелерді біріктіру ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ..
7.5 Жазбаларды түрлендіру ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
Жазбаларды жөндестіру ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... .
Жазбалар қосу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Жазбаларды өшіру ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ...
7.6 Статистикалық және динамикалық сұраныстар ... ... ... ... ... ... . ..
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ...
222
224
225
225
227
228
229
229
231
234
238
239
240
242
245
245
246
247
248
251

8 ADO ТЕХНОЛОГИЯСЫ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 253

8.1 TADOConnection компоненті ... ... ... ... ... ... . ... ... ... ... ... ... ... ...
Байланысты басқару ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
ADO-да транзакция ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... ...
8.2 ADO-да деректерге қатынау компоненттері ... ... ... ... ... .. ... ..
Сорттау және іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ...
ADO командалары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
8.3 ADO қолданбасын жасау мысалы ... ... ... ... ... ... ... . ... ... ... ... ..
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
253
258
260
261
263
264
266
272

9 RAVE REPORTS ПРОГРАММАСЫНЫҢ КӨМЕГ ІМЕН ЕСЕП 273

5

ҚҰЖАТТАРЫН ҚҰРУ ЖӘНЕ ШОЛУ ... ... ... ... ... ... ... ... ... ... ... ... ..
273
0.1 Есеп құжаттары генераторының сипаттамасы ... ... ... ... ... ... ..
0.2 Есеп құжаттарын визуалды (көрнекті) құрастыру ... ... ... ... ... .
Визуалды конструктордың интерфейсі ... ... ... ... ... ... . ... ... ... ...
Құжаттар жобасының құрамы ... ... ... ... ... ... ... . ... ... ... ... ... ... ..
Оқиғалар редакторы ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ...
Көппарақты құралдар тақтасында берілген компоненттер ... ... ...
Мәліметтер шығаруға арналған компоненттер ... ... ... ... ... ... ... .
9.3 Құжатты басқару компоненттері ... ... ... ... ... .. ... ... ... ... ... ...
Құжат жобасы компоненті ... ... ... ... ... ... . ... ... ... ... ... ... ... ...
Құжатты басқару компоненті ... ... ... ... ... ... . ... ... ... ... ... ... ... .
Байланыс жасау компоненттері ... ... ... ... ... .. ... ... ... ... ... ... ... ..
9.4 Құжаттарды құру және шолу мысалдары ... ... ... ... ... ... .. ... ... ...
Деректер қоры қолданбасының қарапайым құжаты ... ... ... ... ... ...
Тест сұрақтары ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ ... ... ... ... ... ... ... . ... ... ...
273
273
274
275
277
278
278
279
279
280
280
281
281
285
286

6

КІРІСПЕ

Есептеу техникасының қарқынды дамуы, программалық қамсыздандырудың тиімді құралдарын жасау қажеттігі Жылдам қолданба құру деп аталатын программалау жүйесінің пайда болуына алып келді. Солардың ішінен Borland Delphi жүйесін атап өтуге болады.
Бұл күнде, Object Pascal тіліне негізделген, Borland Delphi визуалды программалау ортасы кеңінен қолданыс табуда. Оның көмегімен, қарапайым программалардан бастап деректер қорымен жұмысқа арналған кәсіби программаларға дейін, әр түрлі деңгейлі қолданбалар құруға болады.
Оқу-әдістемелік құралда Delphi жүйесінің барлық мүмкіндіктері қарастырылмайды және оқырман Object Pascal тілімен таныс деп есептеледі. Мұнда жүйенің негізгі құралдарының және визуалды программалау технологиясының көмегі арқылы деректер қорымен жұмысқа арналған қолданбалар жасау жолдарына көңіл бөлінген, берілген материалдарды түсіндіретін көптеген мысалдар келтірілген. Оқу-әдістемелік құрал тоғыз тараудан тұрады.
Бірінші тарауда деректер қорының негізгі түсініктері келтірілген. Екінші тарауда реляциялық деректер қорының элементтері және Delphi- дің деректер қорымен жұмыс құралдары және компоненттері қарастырылады. Үшінші тарауда Delphi-де қарапайым ақпараттық жүйе құру мүмкіндіктері көрсетіледі. Төртінші тарауда BDE механизмінің көмегімен жергілікті және қашықтықтағы деректер қорларымен жұмыста қолданылатын негізгі деректерге қатынауды ұйымдастыруға арналған визуалды емес компоненттер қарастырылады. Бесінші тарауда қолданбаның интерфейсін құруға арналған визуалды деректерге қатынау компоненттерінің қолданылу жолдары көрсетіледі. Алтыншы тарауда деректер жиынтығының әр жеке жазбасын өңдеуге негізделген BDE механизмінің көмегімен деректерге қатынаудың жылжымалы тәсілі баяндалып, оны қолдану жолдары көрсетіледі. Жетінші тарауда жазбалар тобын өңдеуге негізделген BDE механизмінің көмегімен деректерге қатынаудың реляциялық тәсілі баяндалып, оны қолдану жолдары көрсетіледі. Сегізінші тарауда деректерге қатынаудың жаңа механизмі - OLE DB интерфейстерін пайдалануға негізделген ADO (AcniveX Data Objects) технологиясы қарастырылады. Тоғызыншы тарауда Rave Reports құжаттар генераторының көмегімен есептеме құжаттарын құру жолдары көрсетіледі.
Ұсынылып отырған оқу-әдістемелік құрал Визуалды программалау құралдары Объектіге бағытталған программалау құралдарымен деректер қорын құру, Деректер қоры, Деректер қорын басқару жүйелері пәндері оқылатын мамандықтарға арналады, сонымен қатар программалаушы мамандарға да пайдалы болары сөзсіз.

1 ДЕРЕКТЕР ҚОРЫНЫҢ НЕГІЗГІ ТҮСІНІКТЕРІ

1.1. Деректер қоймалары

Ақпараттық жүйелердің қазіргі заман талабына сай түрлерінің бірі деректер қоймалары болып табылады, оның құрамына:
# есептеу жүйелері;
# бір немесе бірнеше деректер қорлары;
# деректер қорын басқару жүйелері (ДҚБЖ);
# қолданбалы программалар жиыны кіреді.
Деректер қоры (ДҚ) мәліметтерді сақтау, сонымен қатар сол мәліметтерге жедел және ыңғайлы түрде қол жеткізу жұмыстарын қамтамасыз етеді. ДҚ әр түрлі мәліметтердің белгілі бір ережелерге сай ұйымдастырылған жиынтығы болып табылады.
Деректер қорын басқару жүйесі - деректер қорын құруға, енгізуге, қолдануға арналған тілдік және программалық құралдар жиынтығы. Қолданыс сипаты бойынша ДҚБЖ персоналды және көпшілік қолданушы (көпшілік) болып бөлінеді.
Персоналды ДҚБЖ бір компьютерде жұмыс жасайтын локальды (жергілікті) деректер қорын құруға мүмкіндік береді. Персоналды ДҚБЖ-не Paradox, dBase, FoxPro, Access және т.б. жатады.
Көпшілік ДҚБЖ клиент-сервер архитектурасында жұмыс жасай алатын ақпараттық жүйелер құруға мүмкіндік береді. Көп қолданушы ДҚБЖ-нің ішінен көпке танымал Oracle, InterBase, SyBase, Microsoft SQL Server, Informix жүйелерін атап өтуге болады.
Қазіргі ДҚБЖ-нің тілдік құралдары құрамына:
# мәліметтердің логикалық құрылымын сипаттауға арналған мәліметтерді сипаттау тілі;
# мәліметтермен негізгі амалдар (енгізу, жөндестіру, таңдау) орындауды қамтамасыз ететін мәліметтерді түрлендіру тілі;
# деректер қорының құрылымын басқаруды және мәліметтерді түрлендіруге мүмкіндік беретін, сонымен қатар қашықтықтағы деректер қорына қатынаудың стандартты құралы болып табылатын құрылымды сұраныстар тілі (SQL, Structured Query Language);
# деректер қорына сұраныстарды көрнекті түрде құруды қамтамасыз ететін үлгі бойынша сұраныс тілі (QBE, Query By Example) кіреді.
Қолданбалы программалар немесе қолданбалар деректер қорындағы мәліметтерді өңдеуге арналған программалар. Қолданушы деректер қорын басқаруды және оның мәліметтерімен жұмыс жасауды осы қолданбалардың көмегімен жүзеге асырады.
Кейде деректер қоры термині кеңінен қарастырылады да, тек ДҚ-ын ғана білдірмей, оның мәліметтерін өңдейтін қолданбаны қоса білдіреді.

1.2 Деректер қорын ұйымдастыру модельдері

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

1.3 Деректер қорлары мен қолданбалар

Қолданбалар мен деректер қорларының өзара орналасуына байланысты:
# жергілікті (локальды) ДҚ;
# қашықтықтағы ДҚ деп бөлуге болады.
Локальды деректер қорымен жұмыс жасау үшін локальды қолданбалар, ал қашықтықтағы деректер қорларымен жұмыс жасау үшін клиент-серверлік қолданбалар жасалады және қолданылады.
Деректер қорларының орналасуы сол деректер қорындағы мәліметтерді өңдейтін қолданбаны жасауға біршама ықпалын тигізеді. Осыған байланысты қолданбалардың үш түрін атап өтуге болады:

# локальды деректер қоры пайдаланылатын қолданбаларды бірдеңгейлі қолданбалар деп атайды, себебі қолданба мен деректер қоры тұтас бір файлдық жүйе құрады;
# қашықтықтағы деректер қоры пайдаланылатын қолданбалар қосдеңгейлі және көпдеңгейлі болып бөлінеді. Қосдеңгейлі қолданбалар клиенттік және серверлік бөліктерден тұрады;
# көпдеңгейлі (әдетте үшдеңгейлі) қолданбаларға клиенттік және серверлік бөліктерімен қатар қосымша бөліктер кіреді. Мысалы, үшдеңгейлі қолданбаларға клиенттік бөлік, қолданба сервері және деректер қоры сервері кіреді.
Бірдеңгейлі және қосдеңгейлі Delphi қолданбалары локальды және қашықтықтағы деректер қорына қатынауды келесі механизмдер арқылы жүзеге асырады:
# BDE (Borland DataBase Engine - Borland фирмасының деректер қоры процессоры). Ол деректер қорымен байланысқа арналған дамытылған API интерфейсін ұсынады;
# ADO (ActiveX Data Objects - ActiveX-тің мәліметтер объектісі) мәліметтерге қатынауды OLE DB (Object Linking and Embedding Data Base - деректер қоры объектілерін байланыстыру және ендіру) көмегімен жүзеге асырады;
# dbExpress деректер қорындағы мәліметтерге драйверлер жиынтығының көмегімен жылдам қатынауды қамтамасыз етеді.

1.4 BDE үшін архитектуралық нұсқалар

Мұнда біз BDE технологиясының мысалында ақпараттар жүйесінің архитектурасының түрлі нұсқаларын қарастырамыз.
Деректер
BDE
Қолданба
Локальды деректер қорлары өздерімен жұмыс істейтін қолданбалар орналасқан компьютерде орналасады. Мұндай жағдайларда ақпараттық жүйені локальды архитектуралы деп атайды (1.4.1 - сурет). Әдетте, деректер қорымен жұмыс бірқолданушы режимінде жұмыс істейді. Қажет жағдайда бір мезгілде сол мәліметтерге қатынайтын компьютердегі басқа қосымшаны қосуға болады. Деректер қорына бірге қатынауды басқару үшін арнайы бақылау және қорғау құралдары қажет. Ол құралдар, мысалы, қосымша басқа қосымша өңдеп жатқан жазбаны өзгертуге тырысатын жағдай туындаса, қажет болады. Әр деректер қоры мұндай бақылауды өз тәсілдерімен жүзеге асырады және әдетте қатынауға шектеу қою құралы болады. 1.4.1 - сурет. Локальды архитектура

Локальды деректер қорына кіру үшін BDE мәліметтер қорының процессоры dBase, Paradox, FoxPro деректер қорының форматтарымен және мәтіндік файлдарымен жұмыс жасауға мүмкіндік беретін стандартты (тұрақты) драйверлерді қолданады.
Локальды деректер қорын қолдануда желіде көпшілік кіруді ұйымдастыруға да болады. Бұл жағдайда ДҚ файлдары және олармен жұмыс істеуге арналған қолданбалар желі серверінде орналасады. Әр қолданушы өз компьютерінен серверде орналасқан қолданбаны қосады, мұнда оның компьютерінде қолданбанының көшірмесі қосылады. Мұндай локальды деректер қорының желілік нұсқасы
файл-сервер архитектурасына сәйкес келеді. Файл-сервер архитектурасын қолдануда қолданба желінің әр компьютеріне жазылуы мүмкін. Бұл жағдайда жеке компьютердің қолданбасына ортақ деректер қорының орналасқан орны белгілі болу қажет.
Деректер қорының локальды көшірмесі
Қолданушы компьютері
Деректер қорының локальды көшірмесі
Желі сервері
Қолданушы компьютері
BDE
Қолданба
Деректер қоры
BDE
Қолданба
1.4.2 - Сурет. Файл - сервер архитектурасы.
Мәліметтермен жұмыс істеу барысында желідегі әр қолданушының компьютерінде ДҚ-ның локальды көшірмесі қолданылады. Бұл көшірме әлсін - әлсін сервердегі деректер қорының мәліметтерімен жаңартылып отырады.
Файл-сервер архитектурасы әдетте қолданушылары көп болмайтын желілерде қолданылады, оның іске асуына дербес ДҚБЖ сәйкес келеді, мысалы, Paradox немесе dBase. Бұл архитектураның қолайлылығы - оның іске асырылуының қарапайымдылығы болып табылады. Сонымен қатар, қолданба бір ғана қолданушыға арналады және сол қолданба орнатылатын желі компьютеріне тәуелді болмайды.
Алайда Файл-сервер архитектурасының айтарлықтай кемшіліктері де бар:

# Қолданушы ДҚ-ның локальды көшірмесімен жұмыс істейді, яғни ондағы деректер қандай да бір кестеге әрбір сұраныс жасау барысында жаңартылып отырады. Мұнда, деректері қажет болатын кестенің жаңа көшірмесі серверден қайта жіберіледі. Яғни, егер қолданушыға кестенің бірнеше жазбалары қажет болса да, желі бойынша серверден кесте тұтасымен қайта жіберіледі. Нәтижесінде желідегі шамадан тыс көп артық ақпараттардың алмасуы нәтижесінде желіге ауыртпалық түсіріледі. Ол оның жылдам жұмыс атқаруының және жалпы ақпараттық жүйенің өнімділігінің төмендеуіне әкеліп соғады.
# Әр компьютерде өзінің деректер қоры көшірмесі болғандықтан, бір қолданушы енгізген өзгертулер біраз уақыт аралығында басқа қолданушыларға белгілі болмайды. Сондықтан деректер қорын әрдайым жаңартып отыру қажет.
# ДҚ басқару әр компьютерден жасалады, сондықтан қатынауды басқару, ДҚ құпиялығы мен тұтастығын қадағалап отыру айтарлықтай күрделенеді .
Қашықтықтағы ДҚ желідегі компьютер-серверде орналасады, ал осы ДҚ-мен жұмыс жасауды жүзеге асыратын қолданба қолданушының компьютерінде орналасады. Бұл жағдайда клиент- сервер архитектурасында жұмыс атқарылады, мұндағы ақпараттық жүйе деректер қорының сервері мен клиентке бөлінеді (1.4.2 - сурет). Компьютер-сервер клиенттен бөлек болғандықтан оны қашықтықтағы сервер деп атайды.
Клиент - қолданушының қолданбасы. Мәліметтерді алу үшін клиент сұранысты құрып, деректер қоры орналасқан қашықтықтағы серверге жібереді. Сұраныстар мәліметтердің реляциялық модельдерін қолдануда серверге қатынаудың стандартты құралы болып табылатын SQL тілінде құрылады.
Клиент-сервер архитектурасында клиент мәліметтерді алуға сұраныс жібереді де, тек өзі сұраныс жасау арқылы талап еткен мәліметтерін ғана алады. Сұраныстың барлық өңделуі қашықтықтағы серверде іске асырылады. Мұндай архитектураның келесі артықшылығы бар:
# Желідегі ауыртпалық төмендейді, себебі мұнда тек қажетті ақпарат қана айналымда болады.
# Ақпараттың қауіпсіздігі жоғарылайды, себебі барлық клиенттердің сұраныстарын өңдеу, серверде орналасқан жалғыз программамен орындалады. Сервер барлық қолданушылар үшін жалпы ДҚ қолдану ережелерін орнатады, бір жазбаны басқа бір қолданушылардың өзгертулеріне тыйым салу арқылы клиенттердің мәліметтерге қол жеткізу тәртібін басқарады.

# Клиенттік қолданбаларда деректер қорын бақылауға және оған қатынауға байланысты кодтың болмауына байланысты оның күрделілігі азаяды.
# Клиент - сервер архитектурасын іске асыру үшін, әдетте, көпшілік ДҚБЖ қолданылады, мысалы, Oracle немесе Microsoft SQL Server. Мұндай ДҚБЖ өндірістік жүйелер деп атайды. Олар ірі кәсіпорындардың ақпараттық жүйелерін құруға мүмкіндік береді.

Деректер қорының сервері
Қолданушы компьютері
Желінің қашықтықтағы сервері



Қолданушы компьютері
SQL -
Links

BDE
Клиент қолдан- басы
Деректер қоры
SQL -
Links

BDE
Клиент қолдан- басы
1.4.3 - сурет. Клиент - сервер (жуан клиент) архитектурасы

Желінің
Delphi қолданбасының өндірістік ДҚБЖ пайдалануы SQL - Links драйверлері арқылы жүзеге асады. InterBase ДҚБЖ-мен жұмыс кезінде SQL - Links драйверлерінің қажеті жоқ.

Клиент қолданба
SQL -
Links
BDE
Қолданб алар сервері
Деректер қоры
Деректер қорының сервері
Клиент қолданба
Қолданушы компьютері .
.
.
.

Қолданушы компьютері

Компьютер - Қолданбалар сервері

Желінің қашықтықта ғы сервері

1.4.4 - сурет. Үшдеңгейлі клиент - сервер архитектурасы (жіңішке клиент)

Клиент - сервер архитектурасының даму барысы оның үшденгейлі нұсқасының (клиент-қолданба, қолданбалар сервері, сервер) пайда болуына алып келді.
Үшдеңгейлі архитектурада мәліметтерге кіру және оларды өңдеуді ұйымдастырумен байланысты құралдар мен кодтардың біраз бөлігі клиент-қолданбадан қолданбалар серверіне беріледі.
Үшдеңгейлі клиент-сервер архитектурасының негізгі мүмкіншіліктері:
# амалдардың біраз бөлігінің қолданбалар серверіне ауыстыру арқылы серверді босату;
# артық кодтан босату арқылы клиенттік қолданбаның өлшемін кішірейту;
# барлық клиенттердің бірдей әрекет етуі;
# клиенттер түзетулерін жеңілдету - сервер қосымшасының жалпы кодының өзгертілуі барысында автоматты түрде клиенттер- қолданбасының әрекеттері өзгереді.
Ескерте кетейік, ДҚ локальды қолданбаларын - бірдеңгейлі деп, ал ДҚ клиент-серверлік қолданбаларын - көпдеңгейлі деп айтады.

Тест сұрақтары

1. Деректер қоры дегеніміз -
А) клиент-сервер архитектурасында жұмыс жасайтын программалар.
B) деректерді жинауға, енгізуге және қолдануға арналған тілдер мен программалық құралдар.
С) деректерді жинауға, енгізуге және қолдануға арналған мәліметтердің жиынтығы.
D) белгілі-бір ережелерге сүйеніп ұйымдастырылған әртүрлі мәліметтердің жиынтығы.
Е) клиент-сервер архитектурасында жұмыс жасайтын мәліметтердің жиынтығы. ақпараттық жүйе.
2. Деректер қорын басқару жүйесі (ДҚБЖ) дегеніміз - А) белгілі-бір ережелерге сүйеніп ұйымдастырылған әртүрлі мәліметтердің жиынтығы.
B) деректер қорын құруға, енгізуге және қолдануға арналған тілдік және программалық құралдар жиынтығы.
С) деректерді жинауға, енгізуге және қолдануға арналған мәліметтердің жиынтығы.
D) клиент-сервер архитектурасында жұмыс жасайтын программалық құралдар жиынтығы.
Е) клиент-сервер архитектурасында жұмыс жасайтын мәліметтердің жиынтығы.
3. Көпшіліктік ДҚБЖ дегеніміз -
А) дұрыс жауабы жоқ
B) белгілі-бір ережелерге сүйеніп ұйымдастырылған әртүрлі мәліметтердің жиынтығы.
С) клиент-сервер архитектурасында жұмыс жасайтын жан-жақты мәліметтердің жиынтығы.
D) белгілі-бір ережелерге сүйеніп ұйымдастырылған әртүрлі мәліметтердің жиынтығы болып табылады.
Е) Клиент - сервер архитектурасында жұмыс жасайтын ақпараттық жүйелерді құруға арналған тілдік және программалық құралдар жиынтығы.
1 деректер қорында кестелер мен қолданбалар бір компьютерде
орналасады.
А) клиент-серверлік
B) қашықтықтағы
С) локальды
D) желілік
Е) көпшілік
5. ... деректер қорында кестелер мен қолданбалар клиент - сервер архитектурасында ұйымдастырылады.
А) желілік

B) локальды
С) клиент-серверлік
D) қашықтықтағы
Е) көпшілік
6. Жергілікті ДҚБЖ-рін көрсетіңіз А) SyBase, dBase, FoxPro, Access
B) Paradox, dBase, InterBase, Access
С) SQLServer, Informix, Access
D) Informix, SyBase, dBase, Access
Е) InterBase, SyBase, dBase, Access
7. Деректерді ұйымдастыру жолдарына байланысты деректер модельдерінің түрлері:
А) иерархиялық, базалық, реляциялық, объект-бағытты.
B) тармақ, торлық, базалық, объект-бағытты.
С) кестелік, торлық, реляциялық, объект-бағытты.
D) кестелік, базалық, реляциялық, объект-бағытты.
Е) тармақ, торлық, реляциялық, объект-бағытты.
8. Деректер қоры мен қолданбалардың өз ара орналасуына байланысты деректер қорының түрлері ... болып бөлінеді.
А) желілік және объектілі-бағытталған
B) иерархиялық және реляциялық
С) реляциялық және локальды
D) қашықтықтағы және иерархиялық
Е) локальды және қашықтықтағы
9. Клиент - сервер архитектурасында жұмыс жасайтын ақпараттық жүйелерді құруға арналған деректер қорын басқару жұйесін қалай атаймыз
А) көпшілік
B) персоналды
С) иерархиялық
D) желілік
Е) реляциялық
10. ... моделінде мәліметтер тармақ құрылымды ұйымдастырылады А) персоналды
B) иерархиялық
С) көпшілік
D) желілік
Е) реляциялық
11. ... моделінде мәліметтер граф түрінде ұйымдастырылады А) көпшілік
B) персоналды
С) желілік
D) иерархиялық
Е) реляциялық

2 РЕЛЯЦИЯЛЫҚ ДЕРЕКТЕР ҚОРЫМЕН ЖҰМЫС ІСТЕУ ҚҰРАЛДАРЫ

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

2.1 Реляциялық деректер қорының негізгі элементтері

Реляциялық деректер қоры өзара байланысқан кестелердің жиынтығынан тұрады. Әр кестеге бір типті объектілер жайлы мәліметтер кіреді.
Деректер қоры кестелері
ДҚ құрайтын кестелер қатты дискіде каталогтарда (бумаларда) орналасады. Кестелер файлдарда сақталады, олар жеке құжаттарға немесе электронды кестелерге ұқсайды, оларды әдеттегідей (айталық, Windows сілтеуішінің көмегімен) жылжытуға, көшіруге болады. Айырмашылығы ДҚ кестелері көпшілік қолдану режимін қолдайды, ол дегеніміз кестелері бір уақытта бірнеше колданушы пайдалана алады.
Бір кесте үшін мәліметтерден, индекстерден, кілттерден және т.б. тұратын бірнеше файлдар құрылады. Бас кесте болып мәліметтер файлы саналады, бұл файлдың аты құрылған кестенің атымен сәйкес. Басқа файлдардың атаулары автоматты түрде құрылады - барлық файлдардың атаулары бас кесте атымен аталып, ал түсініктемелері сәйкес кестелердің құрамын анықтайды.
Әр кесте жолдар мен бағандардан тұрады. Бағанасын - өріс,
жолын - жазба деп атайды.
Кестенің құрылымын анықтау кесте өрістерін сипаттаудан басталады, әрбір кесте ең болмағанда бір өріске ие болуы қажет. Кестенің құрылымы түсінігі өте ауқымды болып келеді және оған:
# өрістерді сипаттау;
# кілт құру;
# индекстер құру;
# өріс мәндеріне шектеулер ұйымдастыру;
# кестелер арасындағы сілтемелік тұтастық шектеулерін орнату;
# парольдар беру жұмыстары кіреді.
Құрылымның жеке элементтері кестені ң формасына байланысты болады, мысалы, dBase к естелері үшін сілтемелік

тұтастық шектеулері анықталмайды (с ебебі оларға кілт анықталмайды).
Жалпы кестелермен:
* құру (кестенің құрылымын анықтау);
* құрылымын өзгерту;
* атын өзгерту;
* өшіру
жұмыстарын жүргізуге болады.
Кілттер мен индекстер
Кілт мәндері кестедегі әр жазбаны жеке анықтайтын өрістер комбинациясын көрсетеді. Қарапайым кілт тек бір өрістен, ал күрделі кілт бірнеше өрістен тұрады. Кілт құрылатын өрістерді - кілттік өрістер деп атайды. Кестеде тек бір ғана кілт анықтауға болады. Кілт:
# кесте жазбаларының бірмәнділігін;
# деректер қорына сұраныстың орындалуын жылдамдатуды;
# деректер қорында жеке кестелердің арасында байланыс орнатуды;
# сілтемелік біртұтастық шектеулерін қолдануды қамтамасыз етеді.
Сонымен қатар кілтті алғашқы кілт немесе алғашқы индекс деп те атайды.
Кілт туралы ақпарат жеке файлдарда немесе кесте мәліметтерімен бірге сақталуы мүмкін. Мысалы, Paradox деректер қорында бұл мақсат үшін рх кеңейтілуімен басқа файл (кілттік файл немесе басты индекс файлы) қолданады. Access ДҚ-да барлық ақпарат mdb кеңейтілуімен бір жалпы файлда сақталады. Кілттің мәндері белгілі бір ретпен орналасады. Әр кілттің мәні үшін кестеде сәйкесінше жазбаның орнын көрсететін арнайы сілтеме болады. Сондықтан жазбаны іздеу кезінде кесте тұтасымен біртіндеп қаралмайды, ал жазбаға тікелей қатынау кілттің реттелген мәндері арқылы жасалады.
Әр форматты кестелердің кілтті құруда өз ерекшіліктері болады.
Сонымен қатар жалпы ережелері де бар.
# Кілт арнайы (дара) болуы керек. Күрделі кілтте жеке өрістердің мәндері қайталануы мүмкін (бірақ бәрі бір мезгілде емес);
# Кілт жеткілікті және шамадан аспайтын болуы керек, яғни кілттің даралығын бұзбай жоюға болатын өрістері болмауы тиіс;
# Кілт құрамына кейбір типті өрістер кірмеуі мүмкін, мысалы, графиктік өріс немесе түсініктеме өрісі.
Кілттік өрісті таңдау әрдайым оңай, әрі анық бола бермейді, әсіресе көп өрісі бар кестелер үшін. Мысалы, кілттік өріс ретінде кәсіпорын қызметкерлері кестесінде адамдардың тегін немесе қойма кестесінде тауарлардың аттарын таңдау қолайсыз. Бұл жағдайда екі немесе одан да көп бірдей фамилиялардың немесе аттас тауарлардың кездесу мүмкіндігі жоғары. Ол кестелер үшін, айталық,

қызметкерлердің коды өрісін және тауардың артикулы өрісін қолданса болады.
Индекс, кілт тәрізді, кестенің өрістері бойынша құрылады, бірақта оның құрамындағы өрістердің мәндерінің қайталануына жол беріледі - бұл оның кілттен негізгі айырмашылығы болып табылады. Индекс құрылған өрістер - индекстік өрістер деп аталады. Қарапайым индекс - бір өрістен, ал күрделі индекс - бірнеше өрістерден тұрады.
Құрылған индекстерге атау беріледі. Индекс құру кестені индекстеу деп аталады.
Индексті пайдалану:
# мәліметтерді іздеу жылдамдығын арттыруды;
# жазбаларды сорттауды;
# деректер қорында жеке кестелер арасында байланыс құруды;
# сілтемелік біртұтастық шектеулерін қолдануды қамтамасыз етеді.
Соңғы екі жағдайда индекс екінші кесте кілтімен бірге қолданылады.
Сорттау - дегеніміз кесте жазбаларын өріс немесе өрістер тобы бойынша олардың мәндерінің өсу немесе кему ретімен орналастыру болып табылады. Индекс кестені индекстік өрістер бойынша сорттау үшін қызмет етеді деуге болады. Атап айтсақ, Delphi-де Table деректер жиынтығының жазбаларын тек индекстік өрістері бойынша сорттауға болады. Query деректер жиынтығы SQL құралдарының көмегімен кез - келген өрістер бойынша сорттауға мүмкіндік береді, бірақ бұл жағдайда жазбаларды индекстелген өрістер бойынша сорттау жылдамырақ орындалады.
Бір кесте үшін бірнеше индекс құруға болады. Әр бір сәтте олардың біреуін ғана ағымдағы, яғни белсенді индекс жасауға болады. Әдетте кілттік өрістер автоматты түрде индекстеледі. Paradox кестелерінде кілт аты берілмесе де негізгі индекс болып саналады. dBase кестелері үшін кілт құрылмайды және оның рөлін индекстердің біреуі орындайды.
Сонымен, кілттер мен индекстерді қолдану:
# жазбалардың бірмәнді болуына;
# кілттік өрістер мәндерінің қайталануына жол бермеуге;
# кестелерді сорттауға;
# кестелерде іздеу амалдарын жеделдетуге;
# деректер қорының жеке кестелері ара сындағы байланысты орнатуға;
# сілтемелік біртұтастық шектеулерін қолдану мүмкіндік береді.
Деректер қорының маңызды міндеттерінің бірі деректерге жылдам қатынауды қамтамасыз ету болып табылады. Деректерге қатынау уақыты көбіне мәліметтерді іздеуге қолданылатын әдіс- тәсілдерге байланысты болады.

Деректер қорына қатынаудың әдістері мен тәсілдері
Кесте мәліметтеріне қатынаудың:
# реттік;
# тікелей;
# индекстік - реттік әдістері бар.
Реттік әдісте кестенің барлық жазбалары рет ретімен біртіндеп қаралып, қажеттісі ізделеді. Бұл қатынау әдісі аса оңталы емес және іздеу уақытының кесте өлшеміне (оның жазбаларының санына) тікелей пропорционалды арта түсуіне әкеледі. Сондықтан оны тек кішігірім кестелерге қолдану ұсынылады.
Тікелей қатынау кезінде қажетті жазба кестеде кілт немесе индекс негізінде таңдалынады. Бұл жағдайда басқа жазбалар қаралмайды. Жазбаны іздеу жазбаға сілтеме арқылы жасалады.
Индекстік - реттік әдіске реттік және тікелей қатынау әдістерінің элементтері кіреді және жазбалар тобын іздеуде қолданылады. Бұл әдіс мәндері ізделетін өрістер бойынша индекс құрылған жағдайда ғана жүзеге асады.
Көрсетілген қатынау әдістері ДҚБЖ-де жүзеге асырылады және арнайы программалауды қажет етпейді. Өңдеуші программаның міндеті деректер қорының сәйкес құрылымын, яғни кілттер мен индекстерді анықтау болып табылады. Егер өріс үшін индекс құрылса, онда бұл өріс бойынша жазбаны іздеуде автоматты түрде индекстік - тізбектелген әдіс қолданылады. Кері жағдайда тізбектелген әдіс қолданылады.
Кестелермен амалдарды орындау үшін келесі әдістердің бірі қолданылады:
# жылжыма (навигациялық);
# қатынастық (реляциялық).
Қатынаудың жылжыма әдісінің негізі кестенің жеке жазбасын өңдеуде жатыр. Бұл әдіс көбінесе локальды ДҚ немесе кішігірім өлшемді қашықтық ДҚ қолданылады. Егер бірнеше жазбаларды өңдеу қажет болса, онда олардың барлығы біртіндеп рет - ретімен өңделеді. Қатынаудың қатынастық тәсілі бірден жазбалар тобын өңдеуге негізделген. Егер бір жазбаны өңдеу қажет болса, онда бір жазбадан тұратын топ өңделеді. Қатынастық тәсіл SQL-сұранысына негізделгендіктен, оны SQL - бағытты деп те атайды. Бұл қатынау тәсілі қашықтықтық ДҚ амалдарын орындауға арналған, сондықтан олармен жұмыс жасауда ыңғайлы, бірақ оны локальды деректер қоры үшін де қолдануға болады.
Деректерге қатынау тәсілдерін программалаушы таңдайды және ол қолданбаны өңдеуде қолданылатын деректер қорының қатынау тәсілдеріне байланысты болады. Мысалы, Delphi - де құрылатын қолданбаларда жылжыма тәсілін Tablе немесе Query компоненттерімен, ал қатынастық тәсілді - Query компонентінің

көмегімен жүзеге асыруға болады. Осылайша мәліметтерге қатынау тәсілдері деректер қорының құрылымымен, ал қатынау тәсілдері қолданбалармен анықталады.
Кестелер арасындағы байланыс
Дербес жағдайда ДҚ бір кестеден тұруы мүмкін, мысалы, мекемедегі жұмысшылардың туған күндерінен тұратын кесте. Бірақ, әдетте, реляциялық деректер қоры өзара байланысқан кестелерден тұрады. Кестелер арасындағы байланысты ұйымдастыруды байланыстыру немесе кестелерді біріктіру деп атайды. Бір немесе бірнеше кестелерді байланыстыруға болады. Реляциялық деректер қорында өзара байланысқан кестелерден басқа бір де бір кестемен байланыспаған жеке кестелер болуы да мүмкін.
Кестелерді байланыстыру үшін байланыс өрістері қолданылады (кей жағдайда сәйкестендіру өрістері термині қолданылады). Байланыс өрісі міндетті түрде индекстелген болуы керек. Бағыныңқы (тәуелді) кестеде бас кестемен байланысу үшін индекс беріледі, ол ішкі кілт деп аталады. Ол индекстің өрістер құрамы түгелдей немесе жартылай бас кестенің индексінің өрістер құрамымен сәйкес келуі керек.
Индекстерді пайдалану ерекшеліктері байланыстырылатын кестелердің форматына байланысты болады. dBase кестелері үшін индекстер бір өріс бойынша құрылады және кілт пен индекстерге бөлінбейді. Paradox кестелері үшін бас кестенің байланыс өрісі ретінде кілттік өрісті, ал бағыныңқы кестеде индекстік өрістерді қолдану керек. Бұдан басқа бағыныңқы кестеде міндетті түрде кілт анықталған болуы керек. (2.1.1 - суретте) Paradox деректер қоры кестелерінің арасындағы байланыс құрылымы көрсетілген.
Бас кестеде кілт автоинкрементті типті M_Code өрісі бойынша анықталады. Ал бағыныңқы кестеде автоинкрементті типті D_Number өрісі бойынша кілт анықталған және бүтін типті D_Code өрісі бойынша индекс анықталған. Кестелер арасындағы байланыс D_Code және M_Code өрістері арқылы орнатылады. D_Code өрісі бойынша индекс ішкі кілт болып табылады. Кестелер арасындағы байланыс бағыныңқылық қатынасын анықтайды, бұл жерде бір кесте бас кесте (аталық немесе Master), ал екіншісі кесте бағыныңқы (ұрпақтық немесе Detail). Байланыстың өзін бас - бағыныңқы,
аталық - ұрпақтық немесе Master - Detail деп атайды.

Байланыстың төрт түрі бар:
# бірдің - бірге қатынасы;
# бірдің - көпке қатынасы;
# көптің - бірге қатынасы;
# көптің - көпке қатынасы.

Кілт
D_Code
D_Number
. . .
Кілтік өріс
. . .
M_Code
Бас кесте

Тәуелді кесте Индекс (сыртқы кілт)
. . .
Индекстік өріс
Кілттік өріс
. . .

2.1.2 - Сурет. Paradox деректер қоры кестелері арасындағы байланыс сұлбасы

Бірдің - бірге қатынасы дегеніміз - бас кестедегі бір жазбаға бағыныңқы кестедегі бір жазба сәйкес келуі. Және де екі нұсқасы бар:
# бас кестенің әрбір жазбасына бағыныңқы кестеде жазба бар болады;
# бағыныңқы кестеде бас кестенің жазбаларына сай жазба болмауы мүмкін.
Әдетте бірдің - бірге қатынасын өрістері көп кестені бірнеше кестелерге бөлу үшін қолданады. Бұл жағдайда бірінші кестеде қажетті және жиі қолданылатын ақпараттары бар өрістер сақталады, ал қалған өрістер келесі кестеге ауыстырылады.
Бірдің - көпке қатынасы дегеніміз - бас кестедегі бір жазбаға бағыныңқы кестедегі бірнеше жазба сәйкес келуі мүмкін немесе бірде біреуі сәйкес келмеуі мүмкін. Қатынастың бұл түрі өте жиі кездеседі. Кестелер арасындағы байланыс орнатылып болғаннан кейін, бас кестедегі қандай да бір жазбаға өткен кезде бағыныңқы кестесінің, байланыс өрісінің мәнінің бас кестенің ағымдағы жазбасының байланыс өріс мәніне тең болатын, жазбалары автоматты түрде қолжетімді болады. Бағыныңқы кестенің жазбаларын бұлайша іріктеу сүзу (фильтрация) деп аталады.
Көптің - бірге қатынасы бірдің - көпке қатынасынан айырмашылығы тек бағытында. Егер бірдің - көпке қатынасында бас кесте емес бағыныңқы кесте жағынан қарасақ, онда ол көптің - бірге қатынасына ауысады.
Көптің - көпке қатынасы бас кестенің бір жазбасына бағыныңқы кестенің бірнеше жазбасы сәйкес келген және де бір мезгілде бағыныңқы кестенің бір жазбасына бас кестенің бірнеше жазбасы сәйкес келген жағдайда орнын алады.

Өзара байланысқан кестелермен жұмыс ерекшеліктері:
# байланыс өрісін өзгерткенде екі кесте арасындағы жазбалар байланысы бұзылуы мүмкін. Сондықтан бас кесте жазбасының байланыс өрістеріне өзгеріс енгізген кезде, сәйкесінше барлық бағыныңқы кестелердегі байланыс өрістерінің мәндерін де өзгертіп отыру қажет;
# бас кестедегі жазбаны өшірген кезде бағыныңқы кестедегі оған сәйкес жазбаларды да өшіру керек (каскадты өшіру);
# егер бағыныңқы кестеге жазба қосу қажет болса, онда оның байланыс өрісінің мәні бас кестенің байланыс өрісінің мәніне теңдей орнатылуы керек.
Транзакция механизмі
Деректер қорының ақпараты кез-келген уақытта тұтас және қарама-қайшылықсыз болуы тиіс. Мұны қамтамасыз етудің бір жолы - транзакция механизмі болып табылады.
Транзакция амалдар тобының рет-ретімен орындалуын білдіреді. Мұнда екі жағдай болуы мүмкін:
# Барлық амалдар сәтті аяқталған. Бұл жағдайда транзакция сәтті деп саналады, транзакция шеңберінде жеке амалдар арқылы деректер қорындағы жүргізілген барлық өзгерістер расталады. Нәтижесінде деректер қоры бір тұтастық қалыптан екінші тұтастық қалыпқа өтеді.
# Ең болмағанда бір амал сәтсіз аяқталған. Мұндай жағдайда барлық транзакция сәтсіз деп саналады және барлық амалдардың нәтижелері (сәтті аяқталғандар да) жасалмайды. Нәтижесінде деректер қоры транзакцияға түскенге дейінгі қалпына қайтарылады.
Осылайша сәтті транзакция деректер қорын бір тұтастық қалпынан екіншісіне тұтастық қалпына ауыстырады.
Транзакция механизмін:
# деректер қорымен өзара байланысты амалдар тобының орындалуында;
# деректер қорына көпқолданушылық қатынауда қолдану қажет.
Транзакция айқын немесе айқын емес болуы мүмкін. Айқын емес транзакция автоматты түрде басталады, ал аяқталғанда тағы да автоматты түрде құпталады немесе жасалмайды. Айқын транзакцияны программист Database компонентін жәненемесе SQL құралдарын қолданып басқарады.
Көбінесе транзакцияға, әр түрлі кестелерге бір - бірімен байланысты өзгерістер енгізу әрекеттерін жасауда, бірнеше кестелерге жүргізілетін амалдар біріктіріледі. Айталық, жазбалар бір кестеден басқа кестеге ауыстырылсын. Егер жазба алдымен бірінші кестеден жойылса (өшірілсе), ал содан кейін екінші кестеге енгізілсе, онда келеңсіз жағдайларда, мысалы, компьютердің энергоқорындағы үзіліске байланысты, мынадай жағдай болуы мүмкін, жазба бірінші кестеден жойылып қойылып, екінші кестеге енгізілмейді. Егер жазба

алдымен екінші кестеге енгізіліп, содан кейін бірінші кестеден өшірілсе, онда үзіліп кеткен жағдайда жазба екі кестеде де орналасуы мүмкін. Екі жағдайда да деректер қорының тұтастығы және қарама қайшы келмеуінің бұзылуы орын алады.
Бұндай жағдайлардың алдын алу үшін жазбаны бір кестеден жою және басқа кестеге енгізу амалдары бір транзакцияға біріктіріледі. Бұл транзакцияның орындалуы, оның қандай да болсын нәтижесінде деректер қорының біртұтастығының бұзылмауына кепілдік береді.
Транзакцияның механизмін жүзеге асыру үшін ДҚБЖ сәйкес құралдарды ұсынады.
Бизнес - ережелер
Бизнес-ережелер өз алдына ДҚ басқару механизмін көрсетеді, олар ДҚ-ның біртұтас күйін сақтауға, сонымен қатар басқа да әрекеттерді орындауға арналған, мысалы, ДҚ жұмыс статистикасын жинақтау.
Бизнес-ережелер бірінші кезекте ДҚ келесі шектеулерін жүзеге асырады:
# мәндердің мүмкін аралығын беру;
# үнсіз мәнді беру;
# мәннің дараылғын қадағалау;
# бос мәнге рұқсат бермеу;
# сілтемелік тұтастығын шектеу.
Мәліметтер сөздігі
Мәліметтер сөздігі ДҚ анықтамалары мен атрибуттар жиынтығы болып табылады. Мәліметтер сөздігі келешекте ДҚ бейнелеуде қолдануға болатын сипаттамаларды құруға және сақтауға мүмкіндік береді.
Мәліметтер сөздігін пайдалану:
# ДҚ құру процесін жылдамдатуға;
# ДҚ сипаттамаларын өзгертуді жеңілдетуге;
# қолданбаның визуалды компоненттеріне біркелкі сипат беруге мүмкіндік жысайды.
ДҚ анықтамасы арнайы ДҚ болып табылады, ол қордың құрылымын сипаттайды, бірақ құрамына мәліметтер кірмейді.
Атрибуттар - жеке өрістердің сипаттамаларының жиынтығы болып табылады. Қолданбаның орындалу барысында атрибуттар арқылы берілген өріс сипаттамалары, өріс мәндерін көрсететін, мысалы, DBGrid немесе DBText, визуалды компоненттердің сәйкес қасиеттерінің мәндері ретінде орнатылады.

2.2 Реляциялық деректер қорымен жұмыс істеуге арналған құралдар

Delphi өзінің деректер қоры кестесінің форматы болмағанымен ол көптеген әр түрлі ДҚБЖ-ін жан-жақты қолдауды қамтамасыз етеді, оның ішінде локальды (мысалы, dBase немесе Paradox) және өндірістік (мысалы, Sybase немесе InterBase). Delphi-дің деректер қорымен жұмыс істеуге арналған құралдарын екі топқа бөлуге болады:
# аспаптар
# компоненттер
Аспаптарға деректер қорына құрылып жатқан қолданбадан тыс қызмет көрсететін арнайы программалар мен пакеттер жатады.
Компоненттер деректер қорымен амалд ар орындауды қамтамасыз ететін қолданбалар құруға арналған.
Аспаптық құралдар
Delphi деректер қорымен жұмысқа арналған келесі аспаптық құралдар тобын ұсынады:
# Borland Database Engine (BDE) - Delphi қолданбаларынан ДҚ қатынауды қамтамасыз ететін динамикалық программалар мен драйверлердің жиынтығы болып табылатын деректер қоры процессоры. BDE деректер қорына қатынаудың орталық бөлігі болып саналады;
# BDE Administrator - BDE әртүрлі параметрлерін орнатуға, деректер қорының драйверлерін орнатуға, ODBC драйверлерін құруға және өшіруге, псевдонимдер (лақап атаулар) құруға және оларға қызмет көрсетуге арналған утилиттер;
# Database Desktop - кестелер құруға және жөндестіруге, SQL және QBE сұраныстарын құруға арналған программа;
# SQL Explorer - деректер қорын және мәліметтер сөздігін қарап шығуды (шолуды) және жөндестіруді қамтамасыз ететін ДҚ сілтеуіші;
# SQL Builder - SQL сұраныстарын көрнекті құрастыруға арналған программа;
# SQL Monitor - қашықтықтағы деректер қорына SQL- сұраныстарының орындалу ретін бақылаушы программа;
# Data Pump - деректер қорлары арасында мәліметтерді ауыстыруға арналған программа;
# IBConsole - қашықтағы деректер қоры н басқаруға арналған программа;
# InterBase Server Manager - InterBase серверін іске қосуға арналған программа;
# SQL Links - Microsoft SQL Server немесе Oracle тәрізді қашықтықтық өндірістік ДҚБЖ қатынауға арналған драйверлер;
# dbExpress - SQLConnection, SQLDataSet, SQLQuery, SQLStoredProc және SQLTable сияқты компоненттердің

көмегімен SQL деректер қорларына қатынауға арналған драйверлер жиынтығы. dbExpress құрамына мына драйверлер кіреді:
oo InterBase (dbexpint.dll файлы);
oo DB2 (dbexpdb2.dll файлы);
oo Oracle (dbexpora.dll файлы);
oo MSSQL (dbexpmss.dll файлы);
oo MySQL (dbexpmys.dll файлы).
# InterBase Server - InterBase серверінің клиенттік және серверлік бөлігі.
Компоненттер
ДҚ қолданбаларын құруда қолданылатын компоненттерді қарастырайық. Delphi - дің басқа компоненттері тәрізді деректер қорымен жұмыс жасауға арналған компоненттер визуалды және визуалды емес болып бөлінеді.
Визуалды емес компоненттер кестелердегі мәліметтерге қатынауды ұйымдастыруға арналған. Олар визуалды компоненттер мен ДҚ кестелері арасындағы байланыс бөлігі болып табылады.
Визуалды компоненттер ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Delphi программалау ортасы
Реалды ерітінділер
Delphi ортасында жоба құру
Ғылыми жаратылыстану бағытындағы сыныптарда delphi ортасындағы мәліметтер қоры туралы түсініктерді қалыптастыру
Delphi-дiң мүмкіндіктерін қолданып, азық-түлік автоматының жұмыс принципін бағдарламалау
Объектілі бағытталған бағдарламалау ортасындағы Samples компоненттер тақтасы бетінің ақпараттық анықтамалық жүйесін жасау
Delphi программалау ортасының негізі
Delphi ортасымен танысу туралы ақпарат
Borland Delphі ортасының интерфейсі
Қасиеттер тізімі
Пәндер