Жойылған мәліметтер қорлары
Қазақстан Республикасы Білім және Ғылым министрлігі
Қ.Жұбанов атындағы Ақтөбе мемлекеттік университеті
Физика-математика факультеті
Информатика және есептеуіш техника кафедрасы
050602 – «Информатика» мамандығының
4 курс студенті
Абдуллаева Ляззат Альмурзақызының
ДИПЛОМДЫҚ ЖҰМЫСЫ
Тақырыбы: «Сайлау бөлімшесіндегі дауысты есептеу жүйесінің клиент-серверлік қосымшасын құру»
Ғылыми жетекші:
Информатика және ЕТ кафедрасының оқытушысы Нурманова А.А.
Ақтөбе – 2010
1
МӘЛІМЕТТЕР ҚОРЫ ТУРАЛЫ НЕГІЗГІ ТҮСІНІКТЕР................................
1.1 Мәліметтер қоры..........................................................................................
1.2 Мәліметтер қорының құрылымы...............................................................
1.3
2 Клиент-серверлік технологияның типтік шешімі………………………..29
2.1 "Файл-сервер" және "клиент-сервер" архитектуралары 9
2.2 Мәліметтер қорымен жұмыс жасауға арналған қосымшалар құру.........12
2.2.1 Borland Database Engine (BDE) ядросы 15
2.2.2 Borland SQL Links for Windows пакеті 18
2.2.3 SQL-ды қолдану 22
2.3 Клиент-сервер жүйелерін құру ерекшеліктері 22
2.3.1 Тиiмдiлiк/үйлесiмдiлік 23
2.3.2 Мәлiметтердiң тасымалдануы 24
2.4 InterBase локальды серверінің қолданылуы 27
2.4.1 InterBase локальды сервері 28
КІРІСПЕ
Көп қолданушылар мәліметтер қоры үшін клиент – серверлік мәліметтер
Дипломдық жұмысымның тақырыбы «Сайлау бөлімшесіндегі дауысты есептеу жүйесінің »
Дипломдық жұмыстың мақсаты – «Сайлау бөлімшесіндегі дауысты есептеу жүйесінің
Дипломдық жұмыстың құрылымы негізінен үш тараудан тұрады:
Мәліметтер қорының модельдері, архитектурасы, құрылымы және ортасының негізгі
Клиент-серверлік технологияның архитектурасы, құрылымы туралы теориялық материалдар тереңдете меңгеріледі;
«Сайлау бөлімшесіндегі дауысты есептеу жүйесінің » клиент-серверлік қосымшасын құру.
МӘЛІМЕТТЕР ҚОРЫ
Мәліметтер қоры, архитектурасы, модельдері
Мәліметтер қоры - (біз реляциялық мәліметтер қоры туралы айтамыз)
Кестені қарапайым екі өлшемді кесте ретінде қарауға болады. Кестенің
Бағандар әр-түрлі мінездемелерге сәйкес келеді және әрбір алаң сақталатын
Кестенің әрбір жолы бір объектіге сәйкес келеді және оны
Кестені құрғанда ақпарат қарама-қайшылыққа ұшырамас үшін кілт алаңын кіргіземіз.
Алаң мәндерін қолданушы енгізеді, ол мәліметтер қорында сақталады және
Қолданушы кестемен жұмыс істегенде көрсеткіш жазба бойымен сырғып отырған
Индекстер 1-ші ретті немесе 2-ші ретті болуы мүмкін. Мысалы
Мәліметтер қоры көптеген кестелерден тұруы мүмкін. Қолданбалы программалар
Мәліметтер қорын құру қағидалары
Көп мәліметтер жұмыс жасау қажеттілігі пайда болғанда әрқашанда мәліметтер
Мәліметтер қоры – бұл ең алдымен кестелер жиынтығы, алайда,
Мәліметтер қоры әдетте бір емес, көптеген кестелерден тұрады. Мысалы,
Dep бөлімшелері туралы мәліметтер кестесінің мысалы:
Бөлім Тип
Dep Proisv
Бухгалтерия Басқарма
Цех Өндіруші
Цех Өндіруші
Бөлек және кестелер әрине пайдалы, бірақ одан да көп
Байланысқан кестелерде әдетте бір кесте басты болады, ал басқасы
Қарапайым мәліметтер қорының құрылымы
Базаға ешқандай мәліметтер енгізілмеген жағдайда да мәліметтерқоры болып қала
Мәліметтер қорлары мен қосымшалар
Мәліметтер қоры мен қосымшалардың өзара орналасуларына байланысты келесі мәліметтер
Локальды мәліметтер қорлары;
Жойылған мәліметтер қорлары.
Локальды мәліметтер қорларымен операциялар жасау үшін локальды қосымшалар, ал
Мәліметтер қорының орналасуы көптеген жағдайда осы қорда бар мәліметтерді
Локальды мәліметтер қорын пайдаланатын қосымшаларды бір деңгейлі (бір буынды)
Жойылған мәліметтер қорын пайдаланатын қосымшаларды екі деңгейлі (екі буынды)
Көп деңгейлі (әдетте үш деңгейлі) қосымшалар клиенттік және серверлік
Бір және екі деңгейлі Delphi қосымшалары келесі механизмдерді қолдана
BDE (Borland Database Engine – Borland фирмасының мәліметтер қорының
ADO (Active X Date Objects – Active X мәліметтерінің
dbExpress драйверлер жинағы көмегімен мәліметтер қорындағы ақпараттарға тез қол
Interbase тікелей Interbase мәліметтер қорына қол жеткізуді іске асырады.
Мәліметтер қорындағы ақпараттарға қол жеткізу технологиясының вариантын таңдау өңделген
Үш деңгейлі Delphi 7 қосымшаларын DataSnap механизмі көмегімен құрастыруға
1.1 Мәліметтер қоры
Мәліметтер қоры бұл ақпараттарды сақтау үшін арналған ұйымдастырылған құрылым.
Әлемде көптеген мәліметтер қорын басқару жүйелері бар. Олардың әр
Мәліметтер қоры дегеніміз – бұл алдымен кестелер жиынтығы. Мәліметтер
Кестені қандай да бір жиын атрибуттары бар екі өлшемді
Әрбір кестенің жолы берілген кестеде сипатталған объектілердің біреуіне сәйкес
Кестемен жұмыс кезінде қолданушы немесе программа курсормен жазбалардың бойымен
Мәліметтер қоры – қоғамның қандай да бір саласындағы немесе
Комплекстік мәліметтер қорын бірнеше әдістермен құруға болады:
Программалаудың алгоритмдік тілдері – Паскаль, Бейсик.
Программалау ортасының көмегімен – Visual Basic, Delphi.
Мәліметтер қорын басқару жүйесі деп аталатын арнайы программалық жабдық
1.2 Мәліметтер қорының құрылымы
Мәліметтер қорына ешқандай мәліметтер енгізілмеген
Біз білеміз, екі өлшемді кестенің
Мәліметтердің типтері және моделдері
Қорда сақталған мәліметтер анықталған логикалық құрылымда болады, басқаша айтқанда
• иерархиялық,
• желілік,
• реляциялық.
Мұнымен қатар, соңғы жылдары келесі мәліметтер модельдері пайда болды
• постреляциялық
• көпөлшемді
• объектіге-бағытталған.
Басқа мәліметтер моделіне негізделген, белгілі моделдерді кеңейтетін барлық
Кейбір МҚБЖ бір уақытта бірнеше моделдерді қолдай алады. Мысалы,
Иерархиялық модель
Иерархиялық модельде мәліметтер арасындағы байланысты реттелген граф (немесе тармақ)
2.1 Иерархиялық моделдегі байланыс
Қандай да бір программалау тілінде иерархиялық МҚ-ның құрылымын сипаттауға
Мәліметтердің «тармақ» типі ПЛ/1 және Си программалау тілдеріндегі «құрылым»-ға,
«Тармақ» типі өзіне ішкі типтерді (ішкі тармақты) қамтиды, оладың
Түбірлік тип дегеніміз ішкі типтері бар және өзі ішкі
Иерархиялық мәліметтер қоры «жазу» типті экземплярдан тұратын «тармақ» типті
Иерархиялық мәліметтер қорында келтірілген терминологиядан басқа да терминология қолданылуы
Компьютер жадында иерархиялық мәліметтердің физикалық орналасуын ұйымдастыру үшін төмендегідей
• жадының тізбектеле үлестірілуі бойынша сызықтық тізіммен берілуі (адрестік
• байланысқан сызықтық тізіммен берілуі (көрсеткіштер мен анықтамалықтарды пайдаланатын
Иерархиялық ұйымдастырылған мәліметтерді манипуляциялаудың негізгі операциялары:
• МҚ-ның көрсетілген экземплярын іздеу;
• бір тармақтан басқа тармаққа көшу;
• тармақ ішінде бір жазудан басқа жазуға ауысу;
• көрсетілген орынға жаңа жазуды қою;
• ағымдағы жазуды өшіру және т.б.
Иерархиялық қордағы мәліметтер
«Тармақ» типін анықтау сәйкестілігінен ұрпақ пен аталық арасында автоматты
Мәліметтердің иерархиялық моделінің жетістігіне компьютер жадының тиімді пайдаланылуы мен
Мәліметтердің иерархиялық моделі иерархиялық реттелген ақпараттармен жұмыс істеуге ыңғайлы
Күрделі логикалық байланыстармен ақпаратты өңдеудің қиындығы иерархиялық модельдің кемшілігі
Мәліметтердің иерархиялық моделіне МҚБЖ-ң салыстырмалы түрде шектеулі ғана саны
Желілік модель
Мәліметтердің желілік моделінде элементтерінің әртүрлі өзара байланысын еркін бұтақ
2.4 Желілік моделдегі байланыстар.
Желілік мәліметтер қорының схемасын сипаттау үшін типтердің екі тобы
Желілік типті МҚ-н манипуляциялаудың негізгі операциялары:
• МҚ-да іздеу;
• аталықтан бірінші ұрпаққа көшу;
• ұрпақтан аталыққа көшу;
• жаңа жазу құру;
• ағымдағы жазуды өшіру;
• ағымдағы жазуды жаңарту;
• жазуларды байланысқа қосу;
• жазуларды байланыстан шығару;
• байланыстарды өзгерту және т.б.
Мәліметтердің желілік моделінің жетістігі – жадының пайдалану көрсеткішінің тиімді
Мәліметтердің желілік моделінің кемшілігі МҚ схемасының аса жоғары күрделілігі
Практикада желілік модель негізіндегі жүйелер кеңінен таралмаған. Танымал желілік
Реляциялық модель
Мәліметтердің реляциялық моделін Эдгар Кодд ұсынған, ол қатынас ұғымына
Бір кестенің көмегімен мәліметтердің арасындағы қарпайым байланысты сипаттауға болады,
Сыртқы тасымалдаушыларда реляциялық қорда мәліметтерді физикалық орналастыру әдеттегі
Мәліметтердің реляциялық моделінің жетістігі – оның қарапайымдылығы мен түсініктілігінде
Реляциялық модельдердің кемшіліктері төмендегідей: жеке жазуларды идентификациялаудың стандартты құралдарының
Дербес компьютерлерге арналған шетелдік реляциялық МҚБЖ-нің мысалдарына, dBase III
Реляциялық МҚБЖ-дың соңғы версиялары объектіге-бағытталған жүйелердің кейбір қасиеттерінен тұрады.
Постреляциялық модель
Классикалық реляциялық модель кестенің өрісіндегі жазуда сақталған мәліметтердің бөлінбеушілігін
Постреляциялық модель кесте жазуында сақталатын мәліметтердің бөлінбейтіндігі тәрізді шектеуді
Реляциялық және постреляциялық модельдердің мәліметтер құрылымы.
Кестелерде келтірілгеніндей реляциялық модельмен салыстырғанда постреляциялық модельде мәліметтердің сақталуы
Кестедегі жазулардың өрісінің мөлшері мен өрістің ұзындығына тұрақтылық талабы
Өйткені постреляциялық модель бойынша кестеде нормальданбаған мәндерді сақтауда да
Бақылау функциясын сипаттау үшін өріс мәндерінде процедура құру (конверсия
Постреляциялық модельдің жетістігі байланысқан реляциялық кестелер жиынтығын бір ғана
Постреляциялық модельдің кемшілігі – сақталынған мәліметтердің қарама-қайшылықсыздығы мен тұтастығын
Мәліметтердің постреляциялық моделіне uniVers, Bubba және Dasdb МҚБЖ-рі
Көп өлшемді модель
Қордағы мәліметтерді берудің көп өлшемді тәсілі реляциялық модельмен бірге
Ақпараттық жүйелер тұжырымдамасының дамуында төмендегідей екі бағытты бөліп көрсетуге
• жедел (транзакциялық) өңдеу жүйесі;
• аналитикалық өңдеу жүйесі (шешім қабылдауды сүйемелдеу жүйесі).
Реляциялық МҚБЖ ақпараты жедел өңдейтін ақпараттық жүйелерге арналды және
Көп өлшемді МҚБЖ ақпаратты интерактивті аналитикалық өңдеуге арналған МҚБЖ
Мәліметтердің агрегаттылығы-ақпаратты жалпылаудың әртүрлі деңгейінде қарастыруды көрсетеді. Ақпараттық жүйелерде
Мәліметтердің тарихилығы мәліметтердің және олардың өзара байланысының жоғары деңгейдегі
Мәліметтердің тұрақтылығы оларды өңдеу барысында шақыру, сақта, индекстеу және
Мәліметтердің уақытқа байланыстылығы таңдау құрамында уақыт пен ай-күннің мәндері
Мәліметтердің болжанатындығы болжау функциясын беруге болатынын және оның әртүрлі
Мәліметтердің көп өлшемді моделі цифрлық мәліметтерді көрнекілендірудің көп өлшемдігін
Реляциялық модельмен салыстырғанда мәліметтерді көп өлшемді етіп ұйымдастыру жоғары
Мәліметтердің реляциялық және көпөлшемді берілулері
Мәліметтердің көп өлшемді моделінің негізгі ұғымдарын қарастырайық, оған өлшем
Өлшем – бұл гиперкубтың бір бүйір қырын құрайтын бір
Ұяшық немесе көрсеткіш – бұл мәндері тіркелген өлшеулер жиынтығымен
Қазіргі көп өлшемді МҚБЖ-де мәліметтерді ұйымдастырудың екі негізгі схемасы
Поликубтық үлгіде МҚ-да әртүрлі бірнеше гиперкуб анықталуы мүмкін және
Гиперкубтық үлгіде барлық көрсеткіштер белгілі бір өлшеулер жиынтығымен анықталады.
Мәліметтердің көп өлшемді моделінде қолданылатын бірқатар арнайы операциялар бар:
«Кесу» (Slice) бір немесе бірнеше өлшеуді тіркеу нәтижесінде алынған
«Агрегациялау» (Drill Up) және «детализациялау» (Drill Down) операциялары гиперкубтағы
Мәліметтердің көп өлшемді моделінің негізгі жетістігі – уақытқа тәуелді
Мәліметтердің көп өлшемді моделінің кемшілігі – қарпайым есептегі ақпаратты
Объектілі бағдарланған модель
Объектілі бағдарланған мәліметтер моделінде мәліметтер қорының жеке жазуларын идентификациялауға
Стандартты объектілі бағдарланған модель ODMG -93 стандартында сипатталған (Object
Объектілі бағдарланған МҚ-ның құрылымын торабтары объект болып табылатын графикалық
Әрбір объект – класс экземпляры объектінің ұрпағы болып есептеледі,
Мәліметтер қорының реляциялық моделі
Мәліметтер моделі дегеніміз – бұл мәліметтердің құрылымын, мәліметтердің рұқсат
Инфологиялық модель пәндік саланы мазмұндық деңгейде сипаттайды. Оны жасау
Концептуальды модель пәндік саланың объектілері мен байланыстарын формальды деңгейде
Мәліметтердің ішкі немесе физикалық моделі тікелей машиналық мәліметтерді орналастыру
Реляциялық мәліметтер қорының анықтамасы
Реляциялық мәліметтер қоры МҚ-да сақталатын барлық ақпараттардан тұратын қатынастар
Қатынастар өзінің атымен және осы қатынастар байланысқан элементтермен, атрибуттар
()
Қатынас аты қатынас элементтері арасындағы байланыстардың маңызын түсіндіретіндей болып
Объектілердің немесе байланыстардың кейбір қасиеттерін сипаттау үшін атрибуттар деп
Атрибуттар атымен, типімен, мәнімен және басқа қасиеттерімен сипатталады.
Атрибут аты – бұл мәліметтерді өңдеу процесіндегі атрибуттың шартты
Атрибуттың мәні – объектілер мен байланыстардың кейбір қасиеттерін сипаттайтын
Атрибуттар қатынастардағы мәліметтерді біріктіретін, мәндер класына сәйкес келеді. Қатынастар
Атрибуттар сипаттамалары қатынастың әрбір аргументі үшін мәндерді енгізу облысымен
Нақты кортеждің бір мәнді идентификациясы үшін қолданылатын атрибут немесе
* Мәліметтердің реляциялық моделі қазіргі уақытта кең таралымға ие
Реляциялық модельді өз мәліметтерінде қамтитын (кесте түрінді) мәліметтерді қарастырудың
Кесте мәліметтердің тікелей «сақтаушысы» ретінде қарастырылады. Реляциялық жүйелерде кестені
Қатынас екі бөліктен – тақырыбы (аты) және мазмұнды бөліктен
KOD NAME SUMM
5216 Асанов Н.Д. 25000
5217 Даулетов М.М. 17000
МҚ жұмыс жасауға арналған Delphi компоненттерді визуальді және
Визуальді емес компоненттер кестелердегі мәліметтерге қатынауға арналған.
МҚ-мен жұмыс жасауға арналған компоненттер Data Access,
Data Access-тегі визуальді емес, Data Controls парағында мәліметтерді басқаруға
Midas парағындағы визуальді компоненттер қашықтықтағы МҚ-н басқару
Qreport парағындағы компоненттер отчет құруға мүмкіндік береді.
Қосымша құру технологиясы
Қарапайым қосымша құруды қарастырайық. Ол келесі сатылардан
МҚ кестесін құру;
Қосымша формасын құру.
МҚ кестесін құру үшін Database Desktop программасын қолданған
Жаңа кестені құру New => Table командасынан басталады және
Кесте типін таңдау ( Paradox);
Кесте құрылымын анықтау;
Кілттік өрістерді көрсету;
Индекстерді анықтау;
Өрістер мәндеріне қойылған шектеулерді анықтау;
Парольді анықтау;
Кестелерді байланыстыру.
Осы тізімдегі бірінші екеуі міндетті түрде орындалуы керек.
Кілттік өрістерді белгілеу үшін Кеу кілт бағанында
Кесте құрылымын анықтауда қолданылатын қосымша әрекеттер Table
Seconfary Indexes - (задание индекса);
Validity Сhecks - өріс мәндеріне шектеу қою;
Password Security - пароль қою;
Referential Integrety- кестелер арасындағы сілтеуіштік біртұтастықты
Table Language - тілді тағайындау;
Table Lookop - қарауға арналған өрістерді көрсету.
Secondary Indexes пунктін таңдаған кезде Define (определить) пернесі
Unique - индексті құрайтын өрістер уникальді мәндер
Case sensitive - жолдық типті өрістерде симвлодар регистрі
Descending- сұрыптау мәндердің кему реті бойынша орындалады.
Индекстік өрістерді анықтап болған соң, ОК батырмасын шертіп, Save
Кесте құрылымы анықталған соң оны Save as.. батырмасын
Кесте құрылымын өзгерту үшін Tabl/Restructure командасын қолданады. Ол үшін
Мәліметтер қорының архитектурасы.
Мәліметтер қорының орындалуы мәліметтер қорын құрайды. Мәліметтер қорының төрт
Локальді сервер
Файл сервер архитектурасы
Клиент сервер архитектурасы
Көпдеңгейлі архитектура
Локальді мәліметтер қорымен жұмыс жасағанда мәліметтер қоры өзі қосымша
Файл сервер мәліметтер қорының локальді мәліметтер қорынан айырмашылығы мәліметтер
Көп қолданушылар мәліметтер қоры үшін клиент – серверлік мәліметтер
Көпдеңгейлі – мәліметтер қоры соңғы кезде мәліметтер қорының қарқынды
Мұнда төменгі деңгейдегі клиент кестесіндегі қолданушы қосымшасы. II деңгейде
Үш деңгейлі қосымшаларды құру
Клиент-сервер архитектурасының дамуы сервер клиент қосымшасымен бірге сервер қосымшасы
Үш деңгейлі клиент-сервердің архитектурасыныңнегізгі артықшылығы сервердің жұмысын азайтады. Клиенттік
Қашықтықтағы мәліметтер broker – remote Data Broker сервер қосымшасымен
Бизнес объектілер broker – business object Broker Borland
Мәліметтерді шектеу broker – constraints Broker. Ақпараттық жүйелердің әртүрлі
DCOM – басқа копьютердегі орналасқан объектіні қолдануға мүмкіндік береді.
MIS - Microsoft фирмасы құрған com технологиясына толықтырылған
TCP/IP - әртүлі желідегі, сонымен қатар интернет желісіндегі компьютерлерді
CORBA – объектілер сұранысы кезіндегі брокермен бірге жалпыға бірдей
Үш деңгейлі қосымшаны құрудың серверді ғана қолданатын екі деңгейлі
Сервер қосымшасы – сервермен клиент арасындағы өзара әрекетті ұйымдастыруға
Remote data module – dcom, OLEInterprise, TCP/IP серверлері үшін
MTS data module – MTS сервері үшін қолданылатын қашықтықтағы
Corba data module – corba сервері үшін қолданылатын қашықтықтағы
SOAP data module - SOAP сервері үшін қолданылатын қашықтықтағы
Қашықтықтағы мәліметтер модулінде де қарапайым модульдегі секілді компьютерді орындауға
Remote data module – қашықтықтағы мәліметтер модулі Multitier объектілер
Instancing параметрінің мәндері internal мәндер модулі Dll кітапханасының бөлігі
Single әрбір клиент үшін өзінің адрестік кеңістігінде қашықтықтағы мәндер
Multiple Instanre – барлық қосымшасы мәндер модулінің клиенттерге арналып
Клиент қосымшасында сервер қосымшасымен байланыс орнатуы және сервермен ақпарат
Dcom Connection – Dcom, MTS серверімен байланыс орналастырады.
Client Dataset – компонентті сервер қосымшасына келіп түскен және
Corba Connection – Corba серверімен байланыс орнатылады.
InterBase сервері – InterBase толық функциясында SQL сервері болып
Желілік хаттарды толық қолданылады
Мәліметтер қорына ену яғни бір қосымша бірнеше мілңметтер қорымен
Бірнеше днңгейлі архитектура сервер қажет уақытында ескі жазбаларды қарауға
Сұраныстарды тиімді түрде ұйымдастырады.
Бүтіндікті қамтамасыз етеді, яғнм кестелер арасындағы логикалық байланысты алғашқы
Сақталымды процедурамен жұмыс жасайды. Сақталымды процедуралар әздеу және мәліметтерді
Кестеге мәілметтерді енгізгенде, өзгерткенде немесе жойғанда жүктелетін программалар
өзгеріс орынданған бойда қарауға мүмкіндік беретін жаңартылатын бейнелеулер
Транзацияны жүктеу, аяқтау және болдырмауды басқарады.
Мәліметтерге параллель ену мүмкіндігін, яғни бір клиент кестені басқалары
Мәліметтерді автоматты түрде деңгейлеп орындау. Яғни соңғы нәтижені жіберу
Мәліметтердің қосымша көшірмесін сақтауға, қалпына келтіруге, қызмет көрсетуге және
Интерактивті түрде мәліметтерді және сұраныстарды анықтауға арналған Windows утилитасы,
InterBase – те мәліметтердің типтері
InterBase серверіндегі барлық ақпарат .gdb бір файлда сақталады. Бұл
Smallint – - 32768…+32768 аралығындағы 2 байт орын
Float – дәлдігі 7 цифрға дейін анықталған 4 байт
Double precision 15 цифрға дейін анықталған 8 байт орын
Date - дата
Times - уақыт
Char – 0...255 аралығында 0-32767 байт орын алатын нақты
Blob – екілік форматтағы құрылымдық емес типтер;
Varchar - 0...255 аралығында 0-32767 байт орын алатын, ұзындығы
Array – 16 байт орын алатын массив;
Сервердің техникалық мінездемелері
Сипаттамалары
Бір мәліметтер қорының максимальді мөлшері немесе көлемі 10 ГБ
Бір мәліметтер қорының максимальді кестелер саны 65536
Бір кестедегі максимальді бағандар саны 1000
Бір кестедегі максимальді жазбалар саны шексіз
Жазбаның максимальді ұзындығы 64 КБ
Өрістін максимальді ұзындығы 32 КБ
Блок өрістін максимальді ұзындығы шексіз
Мәліметтер қорындағы индекстердің максимальді саны 65536
Бір кестедегі индекстік өрістердің максимальді саны 16
SQL сұранысының максимальді саны 16
Сақталымды процедураның немесе триггердің максимальді мөлшері 48 КБ
InterBase кестесіндегі мәліметтер типтері.
Бағандарды сипаттау келесі түрде жүргізіледі:
Баған аты типі (computed by (өрнек))
Бағанды келесі үш әдіс бойынша сипаттауға болады:
Бағанның типін беру арқылы data немесе integer;
Есептелетін өрісті құру. Ол үшін computed by операндасында өрнек
Домен негізінде сипатталатын баған құру.
Қашықтықтағы мәліметтер қорының кестелер қоры локальді мәліметтер қорына қарағанда
Кестелер
Индекстер
Шектеулер
Домендер
Бейнелеулер
Генераторлар
Триггерлер
Қолданушы функциялар
Сақталымды процедуралар
Ерекшеліктер
Блок фильтрлер
Домендермен жұмыс
Әр түрлі кестеде мәліметтер бір типті болған жағдайда типті
Домен аты [as] \ [default{literal/null/user}/[not null] [chek()]]
Null – нөльдік мән береді.
User – қолданушының атымен қолданылады.
Data – типті өріс үшін Now мәні ағымдағы датаны
Chek - үшін шектеуліні береді. Chek конструкторын
Домендер бір – бірінен тәуелсіз болғандықтан Chek конструкциясы басқа
Chek конструкциясы кестедегі өріс типін анықтағанда қайта анықталады.
Мысал, апта күндерінің мәнін анықтау болсын.
1) create domain Kun as char(10)
chek (value in (‘Дүйсенбі’, ‘Сейсенбі’, ‘Сәрсенбі’, …));
create domain a as
numeric(10, 2) default null
chek (value > 1.25);
create table (a1 Kun,
a2 a, a3 computed dy a2+5;
….);
Alter domain командасының көмегімен not null және мәліметтер типінен
Alter domain домен аты
Set default [{literal/ null/ user}]
[drop default]
Add [constraint]
Chek [{}]
[drop constraint];
Домендерді жою үшін drop domain көмегімен орындалады. Егер домен
Кестелермен жұмыс
InterBase кестесіндегі кілттік өрістер алғашқы және уникальді болып бөлінеді.
Primary key (< кілттік баған тізімі>) 648
Кестеде тек бір ғана алғашқы кілт анықталынады. Бірақ бірнеше
Unique()
Мысал,
Create table Pers
(code integer not null, name varchar(20),
Primary key(code));
Кестелер арасындағы байланыс орнату үшін сыртқы кілт анықталады. Байланыстын
Constrain
Foreign key()
References
Мысал,
Create teble Pay(code integer not null,
pay integer, constrain b1.
foreign key(code) references(pers);
Осы кестедегі байланысты жою үшін:
Alter table кесте аты;
Drop
Ерекше жағдайларды өңдеу
Ерекше жағдайлар бұл қате туралы берілген атауы бар хабарлама.
Сreate exception операторы арқылы құрылады.
Alter exception операторы арқылы өзгереді.
Drop exception операторы арқылы жойылады.
Мысал,
Сreate exception
Name ‘message’;
Тиргерлер және олардың қызметі
Тригерлер кестеге немесе бейнелеуге жазбаны енгізгенде енгізу тригері өзгерткенде
ақпараттын дұрытығын және логикалық бүтіндігін тексере отырып енгізген
Қолданбалы программалық өнімнің өз алдына дербес орындалуын жоғарлатады. Кестедегі
Мәліметтердің логикалық бүтіндігін сонымен қатар мәліметердің алғашқы және
Оқиғаларды қолдана отырып мәліметтер қорында өзгерістер туралы ақпаратты автоматты
Тригерлер create trigger командасымен құрылады. Alter trigger - өзгертіледі,
Тригердерді құру, жою
Тригерлерді құру:
Create trigger ( тригер_аты )
For кесте_аты
[Active / Inactive]
{before / alter}
{Delete / Insert / Update}
{position номер}
As begin
…
End.
Active / Inactive – сәйкесінше тригердің екпіндігі, екпінді емес.
before / alter – тригердің мәліметтер қорындағы өзгеріс сақталғанға
Delete / Insert / Update – мәліметтер қоры кестесіндегі
position номер – көрсетілген номер бойынша тригердің орындалу ретін
Триггерлерді жою:
Drop trigger тригер_аты операторы арқылы орындалады.
Add баған _аты - өзгеріс енгізгенге дейінгі бағанның
New баған_аты - өзгеріс енгізгеннен кейінгі бағанның мәні. Егер
Set term!
Create trigger up_tab for sort active
Before update
As begin
If ( old.tabnom new.tabnom)
Then update oklad
Set tabnom = new.tobnom
Where tabnom = old.tabnom;
End!!
Term!!
Генераторларды қолдану
Көбіне алғашқы немесе уникальды кілт ретінде сандық өріс болады.
Генератор – деп өрістін бұрынғы мәндеріне сәйкес келмейтін уникальді
Create generator генератор_аты; операторын қолданамыз. Генератордың алғашқы мәні:
Set generator генератор_аты;
To алғашқы_мән; операторы арқылы қойылады.
Генераторды қолдану үшін:
Gen_id (генератор аты, қадам) функциясы қолданылады. Бұл функция алдыңғы
Create generator Gen_tabnom
Set generator Gen_tabnom to 1;
Insert into sort( tabnom,… )
Values (Gen_id(Gen_tabnom,…1),…);
Бейнелеумен жұмыс жасау
Мәліметтер қорында бір немесе бірнеше кесте жазбаларынан тұратын бейнелер
Create view бейнелеу_аты;
As < select операторы >
[ with check option ] операторы қолданылады.
Мұндағы with check option бейнелеуді құру шарттын қанағаттандырмайтын жазбаларды
Drop view бейнелеу_аты;
Бейнелеу бір рет алынғаннан кейін бірнеше рет select операторын
Бейнелеудің құру түрлері:
Кестені вертикальді қию:
Create view v_sotr
As select *
From sort
Kod Fio adres
Кестені горизонтальді қию:
Create view h_sotr
As select *
From sort
Where otdel=’IBC’;
Кестені вертикальді және горизонтальді қию:
Create view vh_sotr
As select kod, fio
From sort
Where otdel=’ibc’;
Әртүрлі кестелердегі баған мен жолдардан тұратын жиындарды қию:
Create view fill_sotr
As select d.fio, d.doly, b old
From sort a, oklad b
Where a tabnom=b.tabnom
Егер бейнелеу бағанында өрнек есептелу керек болса, онда
Create view AB_sotr ( fio, st_kf, staj, kolf )
As select a.fio, a.staj + b.kolf, a.staj, b.kolf
From sotr a.oklad b
Where a.tabnom= b.tabnom
Бейнелеуді жаңарту үшін яғни жазбаны қосу, өзгерту және жою
Бейнелеу тек қана бір кестенің жазбаларынан құрылуы керек
Бейнелеуге кестенің not / null атрибуты бар бағандары
Бейнелеудің select операторы ақпараттын функциядан having операторы кестені біріктіруді
Сақталымды процедуралар және олардың қызметі
Сақталымды процедуралар InterBase – тің процессорларымен тригерлер тілінде жазылған
Сақталымды процедуралардың қолданылуының артықшылығы
Жобалаудың модульділігі, яғни біп мәліметтер қорын қолданатын қосымшалар, сақталымды
Өзгертудің дербестігі. Егер процедура коды өзгертілмесе, онда процедураларды қолданып
Өңдеу жылдамдығын арттырады. Сақталымды процедуралар клиенттік емес серверде орындалады.
Проуедуралар қызметті бойынша 2 түрге әрекет және таңдау процедуралары
Әрекет процедуралары бірнеше параметр мәндері беретін қандайда бір әрекетті
Таңдау процедурасы бірнеше параметр мәндері беретін қандай да бір
Сақталымды процедураларды құру және жою
Сақталамды процедураларды құру үшін
Create procedure процедура_аты
[ кіріс параметрі ] [ returns ( шығыс параметрі
As
Begin
…
End.
Кіріс параметрлері шақыру қосымшасынан мәнді процедураға беру үшін қолданылады.
Процедураны жою:
Drop procedure процедура_аты; операторының көмегімен орындалады.
Мысал,
Set term!!{қызметші сөз}
Create procedure kocf_isc ( in_tab integer, in_k float );
Returns ( out_k float ) as declore variable k_ed
Begin
Select kocf
From oklad
Where tabnom:= in_tab
Into : k_ed;
Out_k = k_ed * in_k;
End!!
Set term!!
InterBase – гі сақталымды процедураларға қолдануға арналған SQL тілі
SQL тілінде мәліметтермен жұмыс жасағанда төмендегідей амалдар қолданылады. Орындалу
Жолдың мәліметтер үшін біріктіру амалы
// Немесе
Арифметикалық амалдар
*/ коментарий
Салыстыру амалдары
= , = = тең
! =, ~ =, ^= тең емес амалы
>
<
> =
< =
! >, ~ >, ^ > үлкен емес
!
Event_name параметрі символдық және жолдық айнымалы бола алады. Процедураның
Suspend операторы шығыс параметрінің мәнін қайтаруда орындалады.
Тек процедураны қолданады. Suspend әрекет процедурада қолданылады. Себебі одан
Exit – процедураның орындалуын тоқтату операторы;
When – қателерді өңдеу операторы. Жазылуы:
When { қате } do when опраторы процедураның немесе
Мәліметтер қорын қолдануды басқару
Жүйе деп мәліметтер қорымен бір емес бірнеше қолданушы жұмыс
Құқықтар
All – мәліметтер қорын қарауға, жазбаны жоюға, жаңа жазбаны
жазбаны енгізуге, өзгертуге, кестелер арасындағы байлыныс орнатуда
мүмкіндік береді.
Select – кестелерден және бейнелеулерден жазбаларды қарау мүмкіндігі
береді.
Delete – жазбаны жою мүмкіндігін береді.
Insert – жаңа жазбаны енгізу мүмкіндігін береді.
Update – бар жазбаны өзгерту мүмкіндігін береді.
References – сыртқы кілт арқылы кестемен байланыс орнату мүмкіндігі.
Execute – сақталымды процедураларды орындау мүмкіндігі
Grant командасының жазылуы:
Grant { all [ privileges ] / list_ / list_ < user
{ list _ < object > / list -
Мысалы:
M. Grant select Delete on Tbook to with grant
мұмдағы:
privileges - берілетін құқық атауы. Мәндері: All, select,
update, re.
table name – кесте аты.
view name - бейнелеу аты.
оbject – объект атауы ( процедура, тригер, бейнелеу )
user name – қолданушының аты.
with grant option – басқа қолданушыға олдану құқығын беру.
Revoke командасы арқылы қолданушыға берілген қолдану құқығы алынып тасталынады.
Revoke { all [ privileges ] / list_ / list_ < user
{ list _ < object > / list -
Grant option for – қолданушыға берілген қолдану құқығын алып
Revoke.Delete on Tbook to M;
Транзакциялар
InterBase – те транзакция механизмі
Транзакция толық орындалатын әрекеттер тобы. Мәліметтер қорымен орындалатын әрекеттер
W – W ( енгізу - енгізу). Бірінші транзакция
R – W( оқу – жазу ). Бірінші транзакция
W – R( жазу – оқу ). Бірінші транзакция
Commit – транзакция орындалады.
RollBack – транзакция орындалмайды.
InterBase Express технологиясы
Мәліметтер қорымен жұмыс жасайтын қосымшаны құрғанда төмендегі ережелер сақталғаны
Sql сұраным мен қосымшаның арасында мәліметтерді жіберуге арналған негізгі
Программа қолданатын мәліметтер қорымен байланыс орнатылуы тиіс.
Sql командалар ұйымдастырылуы тиіс.
Қателерді өңдеу және қалпына келтіру мүмкіндігі жүзеге асырылуы тиіс.
Программамен жұмысты аяқталмас бұрын мәліметтер қоры және транзакция жабылуы
Delphi – де мәліметтер қорымен BDE элементтерінсіз жұмыс жасауға
IBTABLE – Бір кестеге енуге беретін кәдімгі TABLE компоненттінің
қолданылатын компонент.
IBQUERY – мәліметтер жиынымен жұмыс жасауға арналған компонент.
IBSTOREDPROC – серверде сақталымды процедураларды орындауға
арналған компонент.
IBDATABASE – InterBase мәліметтер қорымен байланыс орнатуға арналған
компонент.
IBTRANSACTION – InterBase – тегі транзакцияны басқаруға арналған
компонент.
IBUPDATE SQL – кестедегі мәліметтерді өңдеуде қолданылатын компонент.
IBSQL – Delphi прграммасындағы мәліметтер алмасуды азайта отырып SQL
сұранамды орындауға арналған компонент.
IBDATASET – select командасын және жазбаларды енгізу, өзгерту, жою,
командаларын орындауды жүзеге асыратын компонент.
INDATABASEINFO – мәліметтер қоры және InterBase сервері ақпаратты
қосымшадан алуға мүмкіндік беретін компонент.
INSQL MONITOR – клиент-сервер және параллель ағымдар жобасы
жұмысының жылдамдығын арттыруда қолданатын компонент.
INEVENTS – InterBase сервреінің оқиғалапын өңдеуде қолданылатын компонент.
қатынас
Кортеждер
Атрибуттар
Алғашқы кілт
Жойылған мәліметтер қорлары
Пәндік ақпараттарды сипаттау және мәліметтер қорының құрылымын дайындау туралы
Пәндік ақпараттарды сипаттау және мәліметтер қорының құрылымын дайындау
Мәліметтер жады қорын таңдау регистрі bsr
Автоматтандырылған ақпараттық ресурс орталығы
Мәліметтер қоры
Кәсіпорынның өндірістік қорлары
Ұлттық мұрағат қорының құжаттарын ресімдеу
Delphi-де мәліметтер базасын құру
Мәліметтер қорының құрылымы