SQL серверін қолданып қосымшалар жүйесін жетілдіру



Мазмұны.

Кіріспе. 3

Техника.экономикалық негіздеме 6
1. SQLқұрылымдық сұранымдар тілі 7
1.1 SQL мүмкіндіктері мен артықшылықтары 7
1.2 SQL даму тарихынан 8
1.3 SQL көмегімен мәліметтер қоры басқару 9

2.SQL командаларының типтері. 11
2.1.SQL мәліметтерінің типтері 11
2.2. Сандық типтер 12
2.3. Күні мен уақытты беру үшін арналған типтер 13

3. Желілік қосымшаларды құру 28
3.1. ODBC технологиясы 28
3.2.SQL.сервердің Word және Exce. мен өзара байланысы 33
3.3. SQL.серверде MS Access мәліметтерін пайдалану 40
3.4. Active Server Pages технологиясы. 45

3.5. Мәліметтер қорымен Visual Basic ортасында жұмыс 45
3.6. Visual C++.ті SQL.серверге кіру үшін қолдану 53

4. Адам өмірінің қауіпсіздік негіздері 55

5. Экономикалық тиімділік есебі 73

Қорытынды 81

Пайдаланылған әдебиеттер 82

Қосымшалар 83
Кіріспе.

Есеп жасау, бақылау және жобалаулардың негізін көптеген картотекалар, тіркеу журналдары, сондай-ақ тізімдер, сызбалар құрайды. Олар біртіндеп көбейіп, жаңадан топтасады.
Егер де ақпаратттар жинағының көлемі өте үлкен болса, онда керекті мағлұматты іздеп табу өте қиын болады.
ДЭЕМ және ақпаратты өңдеу мүмкіндігі пайда болғаннан кейін біздер көптеген ақпараттық-анықтамалық есептерин автоматизация арқылы шеше аламыз.
Бастапқы кезде ЕЭМда ақапаратты сақтап, оны жинақтауға арнайы файлдар қолданылды. Бұл кезде әрбір функционалдық есепке дербес белгілі бір қорытынды ақпараттан тұратын файл құралатын. Осының бәрі де қолданушыға көптеген қиындылықтар әкелетін.
ЕЭМнің дамуымен бірге басқару системаларын кұру идеялары талқыланды. Мысалы, өндірістегі бухгалтерлік есептің автоматизациясы кезінде мағлұматты сақтау, оны дұрыс өңдеу, және де белгілі бір уақыт сайын өзгертіп отыру. Бұл идеялар өзінің шешімін мәліметтерді басқару системасында, яғни МКБЖ ортасында тапты. МКБЖ арнайы ақпараттар базасымен тікелей жұмыс істейді. Дербес компьютерлердің пайда болуымен қатар таблицалардағы ақпаратты өндеудің ең қолайлысы МКБЖ болып отыр..
Access – реляциялық мәліметтер қорын басқару жүйесі. Қарапайым 2 өлшемді кестер реляциядық мәліметтер қоры болып табылады. Мәліметтер қорын басқару жүйесі мәліметтер қорын құру, мәліметтерді өңдеу, қандай да бір шарт бойынша қордан мәліметтерді таңдау, қор негізінде әр – түрлі формалардың есеп беруі (отчет) құружы жүзеге асырады.
Мәліметтер қорында 2 өлшемді кестенің жолдары жазбалар деп, бағандары өрістер деп аталады.
Дәлірек айтқанжа, мәліметтер қорында, кестердей әр бір жол жазба болып табылады, ал жазба бірнеше өрістерге бөлінеді, олар:
а) мәліметтер қорын құру
б) мәліметтер қорының құрылымын өзгерту
в) форма құру
Реляциондық модель – ең қарапайым модель берілгендерді кесте таблица түрінде топтастырған модель.

берілгендерді қолданбалы программаларға тәуелдігіш жою мақсатында 1970 жылы математик Код реляциондық модель концепциясын ұсынды. Қатынас белгілі бір шарттарда қанағаттандыратын 2 өлшемді кесте.
Қатынастың бағандары – артрибуттар деп аталады. Ал жолды жазулар деп атайды. Реляциондық қоры дегеніміз – бір бірімен байланысты қатынастар жиыны әр – бір қатынас жеке файл түрінде сақталынады. Олар келесі тәртіппен байланысқан (файл, кесте, қатынас, мән).
Модель құрылымның қаталдығы және жұмыс жылдамдығының берілгендер қорының өлшеміне тәуелділігі.
Қолданылған әдебиеттер:
1. Фаронов В. В. «Delphi 5: Руководство разработчика баз данных».
Издательство «Нолидж». Москва – 1999.
2. Microsoft SQL Server. Комплект документации.
3. Шуленин А.В. «Системы Управления Базами Данных».
Издательство «Питер». Санкт-Петербург – 1998.
4. Хьюгс С. «РНР. Руководство разработчика».
Издательство «ДиаСофт». Москва – 2001.
5. Фаронов В. В. «Delphi 5: Учебный курс».
Издательство «Нолидж». Москва – 2000.
6. Глушаков С.В.Ломотько Д.В. «Базы данных:Учебный курс»
www.delphiworld.narod.ru

Реферат

Берілген дипломдық жобада SQL сеорверін қолданып қосымшалар
жүйесін жетілдіру тақырыбы зерттелді.

SQL- СЕРВЕР, ODBC ТЕХНОЛОГИЯСЫ, WORD , EXCEL ,MS ACCESS,
VISUAL BASIC, VISUAL C++

Берілген дипломдық жоба мақсаты SQL сеорверін қолданып
қосымшалар жүйесін жетілдіру болып келеді. Жұмыстың негізгі назар қойылған
программасы SQL-құрылымдық сұранымдар тілі. Бірінші бөлімде құрылымдық
сұранымдар тілінің даму тарихы, мәліметтер қоры туралы түсінікке сипаттама
берілген. Жұмыста қарастырылған EDUCATION (Образование) МҚ-ның құрылымы,
қандай кестелерден тұратыны туралы айтылған. Өрістердің мәндерінің типтері
көретілген.
Екінші бөлімде SQL командалары, олардың типтері, қауіпсіздігін
басқару шаралары, МҚ басқару операторларына қысқаша сипаттама берілді.
Мысалдар келтіріліп, қолданылуы анық айқындалды.
Үшінші бөлімде желілік қосымшаларды құру тәсілдері
қарастырылады. Бұл бөлімде SQL тілінің әртүрлі қолданбалы программалармен
арасындағы желілік байланыстары туралы айтылады. Сонымен қатар адам
өмірінің қауіпсіздігі қарастырылған және экономикалық тиімділікті есептеу
жүргізілген

Мазмұны.
Кіріспе.
3
Техника-экономикалық негіздеме
6
1. SQLқұрылымдық сұранымдар тілі
7
1.1 SQL мүмкіндіктері мен артықшылықтары
7
1.2 SQL даму тарихынан
8
1.3 SQL көмегімен мәліметтер қоры басқару
9
2.SQL командаларының типтері.
11
2.1.SQL мәліметтерінің типтері
11
2.2. Сандық типтер
12
2.3. Күні мен уақытты беру үшін арналған типтер
13
3. Желілік қосымшаларды құру
28
3.1. ODBC технологиясы
28
3.2.SQL-сервердің Word және Exce– мен өзара байланысы
33
3.3. SQL-серверде MS Access мәліметтерін пайдалану
40
3.4. Active Server Pages технологиясы.
45
3.5. Мәліметтер қорымен Visual Basic ортасында жұмыс
45
3.6. Visual C++-ті SQL-серверге кіру үшін қолдану
53
4. Адам өмірінің қауіпсіздік негіздері
55
5. Экономикалық тиімділік есебі
73
Қорытынды
81
Пайдаланылған әдебиеттер
82
Қосымшалар
83

Кіріспе.

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

Бастапқы кезде ЕЭМда ақапаратты сақтап, оны жинақтауға арнайы файлдар
қолданылды. Бұл кезде әрбір функционалдық есепке дербес белгілі бір
қорытынды ақпараттан тұратын файл құралатын. Осының бәрі де қолданушыға
көптеген қиындылықтар әкелетін.
ЕЭМнің дамуымен бірге басқару системаларын кұру идеялары талқыланды.
Мысалы, өндірістегі бухгалтерлік есептің автоматизациясы кезінде мағлұматты
сақтау, оны дұрыс өңдеу, және де белгілі бір уақыт сайын өзгертіп отыру.
Бұл идеялар өзінің шешімін мәліметтерді басқару системасында, яғни МКБЖ
ортасында тапты. МКБЖ арнайы ақпараттар базасымен тікелей жұмыс істейді.
Дербес компьютерлердің пайда болуымен қатар таблицалардағы ақпаратты
өндеудің ең қолайлысы МКБЖ болып отыр..
Access – реляциялық мәліметтер қорын басқару жүйесі. Қарапайым 2
өлшемді кестер реляциядық мәліметтер қоры болып табылады. Мәліметтер қорын
басқару жүйесі мәліметтер қорын құру, мәліметтерді өңдеу, қандай да бір
шарт бойынша қордан мәліметтерді таңдау, қор негізінде әр – түрлі
формалардың есеп беруі (отчет) құружы жүзеге асырады.
Мәліметтер қорында 2 өлшемді кестенің жолдары жазбалар деп, бағандары
өрістер деп аталады.
Дәлірек айтқанжа, мәліметтер қорында, кестердей әр бір жол жазба болып
табылады, ал жазба бірнеше өрістерге бөлінеді, олар:
а) мәліметтер қорын құру
б) мәліметтер қорының құрылымын өзгерту
в) форма құру
Реляциондық модель – ең қарапайым модель берілгендерді кесте таблица
түрінде топтастырған модель.

берілгендерді қолданбалы программаларға тәуелдігіш жою мақсатында 1970 жылы
математик Код реляциондық модель концепциясын ұсынды. Қатынас белгілі бір
шарттарда қанағаттандыратын 2 өлшемді кесте.
Қатынастың бағандары – артрибуттар деп аталады. Ал жолды жазулар деп
атайды. Реляциондық қоры дегеніміз – бір бірімен байланысты қатынастар
жиыны әр – бір қатынас жеке файл түрінде сақталынады. Олар келесі тәртіппен
байланысқан (файл, кесте, қатынас, мән).
Модель құрылымның қаталдығы және жұмыс жылдамдығының берілгендер
қорының өлшеміне тәуелділігі.
Microsoft Access - бұл функционалдық тұрғыдан толық әрі реляциондық
МКБЖ. Онда қолданушыға барлық қолайлы жағдайлар қарастырылған: яғни,
қолданушы кез келген ақпаратты анықтап, өңдей алады, онымен қатар үлкен
көлемді қамтитын ақпартпен жұмыс істей алады.
Ақпарат базасын басқару системаларына сүйеніп, біз ақпараттардың
мінездемелерін, олармен жұмыс істеуді, және бірлесіп жұмыс істеуді бақылай
аламыз.
МКБЖ 3 басты функциядан тұрады:
1) ақпараттарды анықтау ;
2) ақпаратты өңдеу;
3) ақпараттарды басқару
Осы функционалдық мүмкіндіктердің барлығы Microsoft Access те толықтай
өңе алады.
Кез келген құжатпен немесе электрондық таблицамен жұмыс істеу кезінде
біз құжаттың мазмұның немесе таблицаның әр бір ұяшықтың орнын өзіміз таңдай
аламыз. Текстік редакторларда бұл информацияны керек жерге орналастыру үшін
қажет.
Ал электрондық таблицаларда ақпаратты сақтау, керек есеп айырысуларын
жүргізу және қортындыларды керекті түрде ұсыну міндетініз болады.
Егер де электрондық таблицадағы жолдар саны 100-ден асып кетсе, және
де құжат біршене беттен тұрған жағдайда ақпаратпен жұмыс істеу өте қиын
болады. Егер де сіз басқа да қолданушыларға арналған белгілі бір
электрондық таблицаларды құрсаңыз, ондағы өзгерістерді, және жаңадан
енгізілген сандарды бақылай алмайсыз.
Мысалы, сіздің таблицаныздың бір ұяшығында күн (мерзім), ал
екіншісінде ол күнде түскен ақша сақталу керек болса,қолданушы оны
кездейсоқтықтан ауыстырып алуы мүмкін. Осы сияқты көптеген мысалдар
келтіруге болады.
МКБЖның арқасында біз ақпараттың түрін және де оның сақталу әдістерін
өзіміз таңдай аламыз. Сіздер сонымен қатар жұмыс істеуге қолайлы болу үшін,
(ақпараттарды дұрыс енгізу үшін) басты талаптарды қоя аласыз.
Сіздер Microsoft Access барлық мүмкіндіктерді қолдана аласыз: DDE
( DynamicDataExchange, ақпаратпен динамикалық түрде алмасу), және OLE
(Object.Linking and Emedding қарым-қатынас және объетілерді енгізу).
Microsoft Access көптеген ақпарат форматтарымен жұмыс істей алады
(МКБЖның басқа да файлдық структураларымен). Сіздер ақпараттың импорт және
экспорт процестерін текстік редакторларынан және де электрондық
таблицалардан ала аласыз.
Microsoft Access көмегімен сіздер Paradox, dBASEIII, dBASE IV, FoxPro
және т.б. файлдарды өңдей аласыз. Бұл файлдарды сондай-ақ Microsoft
Access импорттауға да болады.

Текстік редактордағы немесе электрондық таблицадағы ақпаратпен жұмыс
МКБЖ-дағы жұмыстарынан көптеген айырмашылықтары бар. Текстік редакторда
даярланған құжатта сіздер таблицалық ақпаратты қосып, оны өңдей аласыз.
Ал электрондық таблицада құрылған құжат берілген бір есепті шешу үшін
арналған. Сондықтан оны басқа да бір есепке қолдану өте қиын.
Ақпаратпен жұмыс істеу кезінде МКБЖ көптеген әдістерді қолданады.
Мысалы, сіздер ақпаратты іздеу шараларын жеке таблицада өңдіре аласыз. Бір
команданы қолдана отырып, жеке бөлікте орналасқан барлық ақпаратты жаңарта
аласыз.
Таблицадағы ақпаратты өндеу үшін Microsoft Access SQL деген өте күшті
тіл қолданылады. Оның көмегімен бір немесе бірнеше таблицадан бізге керекті
информацияны ғана белгілей аламыз.
Microsoft Access ортасында есептерді шешу үшін SQL тілін міндетті
түрде білу керек жоқ.

Сұрақ жағдайы

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

Техника- экономикалық негіздеме

Мәліметтердің санының өсуі, оларды сақтау және өңдеу қажеттілігінен,
әртүрлі компьютерлік жүйелерде қызмет ететін МҚ-ң стандартты тілін құру
сұранысы туындады. Шынында да, мұндай стандартты тіл қолданушыға
мәліметтерді дербес компьютерден, желілік жұмыс станциясынан немесе әмбебап
ЭЕМ-да жұмыс істей отырып басқару мүмкіндігін береді.
SQL (Structured Query Language)-бұл құрылымдық мұранымдар тілінің
қысқартылған атауы, реляциялық МҚ-да мәліметтерді құру және өңдеу
құралдарын береді. Компьютерлік технологиялардан ерекшелігінен
тәуелсіздігі, және SQL-ді реляциялық мәліметтер қорының технологиясы
облысындағы өндіріс жетекшілерімен қолдауы оны МҚ стандартты тіліне
айландырды.
Реляциялық МҚ пайда болғанға дейін, көптеген МҚБЖ үшін құрылған
барлық мәліметтерді басқару тілдері, файлдардың логикалық жазулары түрінде
берілген мәліметтермен жүргізілетін операцияларға бағытталған. Әрине, бұл
қолданушыдан мәліметтердің сақталуын, қандай мәліметтер қажеттігін, олардың
қайда орналасқанын және қалай алу жолдарын білу талапді етеді.
Қарастырылып отырған SQL тілі логикалық байланысқан кесте-қатынастар
жиынтығы түрінде берілген мәліметтермен операциялар жүргізуге бағытталған.
Осы тілдің құрылымының ерекшелігі өңдеу процедурасына емес, мәліметтерді
өңдеудің соңғы нәтижесіне бағытталуында. SQL мәліметтердің, индекстердің
қайда орналасқанын, және нәтиже алу үшін қандай операциялар тізбегін
пайдалану керектігін өзі анықтайды, сондықтан бұларды МҚ-на сұранымдарда
көрсетудің қажеті жоқ.

1.SQL құрылымдық сұранымдар тілі

1.1 SQL мүмкіндіктері мен артықшылықтары

1987 жылы SQL маманданған реляциялық МҚБЖ үшін стандартты тіл болып
барлық кең таралған жүйелерге ене бастады. Ол келесі момнеттерімен
байланысты. Тез әрекеттіліктің өсуі, және энергияны тұтынудың,компьютер
өлшемдері мен бағаларының төмендеуі, тұтыну нарығының, қолданушылар
ортасының және түрлері мен бағаларының кеңеюіне әкеліп соқты. Сондай-ақ,
әртүрлі программалық жабдықтауларға да сұраныс көбейді. Сатып алушы
фирмаларға күресте, программалық жабдықтаушылар нарыққа интеллектуалды, әрі
көлемді программалар кешенін шығара бастады. Олар сатып ала отырып,
көптеген ұжымдар мен жеке қолданушылар ол программаларды өз компьютерлеріне
орната алмадй. Ақпаратпен алмасу және оларды тарату үшін ЭЕМ желілері
құрылды, онда программалар мен мәліметтерді арнайы файлдық сервер лерге
орналастырды.
Файлдық серверлермен жұмыс істейтін МҚБЖ, бір-бірінен алыс ара-
қашықтықта орналасқан әртүрлі ЭЕМ қолданушыларына бір МҚ кіру мүмкіндігін
берді. Мұндай жағдайда ұжымдарды, оқу кешендерін, ақпараттық және басқа
жүйелерді әртүрлі автоматталған басқару жүйелерін өндіру оңайлатылады.
Бірақ бұл кезде қарапайым сұраным құру үшін де файлдық серверден немесе
серверге файлдарды жазу керек болады, ал ол конфликтілік ситуайияларды
туғызуы мүмкін. Мұндай кемшіліктерді бодырмау үшін клиентсервер
технологиясы ұсынылған боатын, бірақ ол үшін сервермен хабарласу тілі қажет-
мұндай тіл ретінде SQL таңдалды.
SQL концепцияларында операциялардың мәліметтердің кесте түрінде
берілуіне бағытталуы, аз сөйлемді жинақы тілді құруға мүмкіндік берді. SQL
сұранымдарды орындау үшін, және де қолданбалы программаларды құру үшін де
пайдаланылуы мүмкін. Онда келесі сөйлемдер бар:
▪ Мәліметтерді анықтау тілі-МҚ анықтау, және де кестелер мен
индекстерді анықтау және жою;
▪ Мәліметтерді таңдау сұранымы-SELECT сөйлемі;
▪ Мәліметтерді түрлендіру сөйлемі-мәліметтер қосу, жою және өзгерту;
▪ Мәліметтерді басқару сөйлемі-мәліметтерге кіру артықшылығн беру
немесе қайтару, транзакцияларды басқару және т.б.
Сондай-ақ SQL бұл сөйлемдерде келесі есептерді орындау мүмкіндігін
береді:
▪ Арифметикалық есептеулер, функционалдық түрлендірулер, және
арифметикалық өрнектер мен текстерді салыстыру операцияларын
орындау;
▪ Кесте мазмұнын экран дисплейіне немесе баспаға шығарар кезде
жолдар мен бағаналарды реттеу;
▪ Қолданушыларғы МҚ-да мәліметтердің көлемін өзгертпей
интерпретациялау мүмкіндігін беретін ұсыныстар құру;
▪ Сұраным бойынша шығарылатын бір немесе бірнеше кестелер және
ұсыныстар мазмұнын басқа кестеде сақтау;
▪ Мәліметтерді топтау, және осы топтарға арифметикалық орта,
сумма, максимум, минимум операцияларын қолдану;
SQL тілі көптеген МҚБЖ-ң негізі болып табылад, өйткені ол
мәліметтердің физикалық құрылымдануына және дискіге жазылуына сондай-ақ
мәліметтерді дискіден физикалық оқуға жауап береді, және МҚБЖ-ң басқа
компоненттерінен және қолданушы қосымшаларынан SQL-сұранымдарды қабылдау
мүмкіндігін береді.Олай болса, SQL қолданушыларға, программаларға реляциялы
МҚ ақпараттарына кіруді қамтамасыз ететін мықты құрал.

1.2 SQL даму тарихынан

Реляцияла МҚ басқару жүйелері 80 жылдардың аяғында кеңінен т анымал
болды. Мұндай мәліметтер қорында ақпарат қарапайым кестеде
сақталатындықтан, мәліметтерді беретін басқа модельдерге қарағанда
артықшылығы көп. SQL реляциялы МҚ тілі болғандықтан, оның тарихы да
мәліметтерді осы тәсілмен берудің дамуымен тығыз байланысты.
Жоғарыда айтылғандай, реляциялы МҚ түсінігі 70 жылдардың басында IBM
компаниясының ғылыми қызметкері Э.Ф.Кодпен енгізілді.Осыдан кейін
реляциялық мәліметтер қоры одбысында IBM компаниясының SystemR деп аталған
жобасымен бірге зерттеулер жүргізіле бастады, мұнда реляциялық модельдің
жұмыс істеу қабілеті тексеріліп және дәлелденді. Сондай-ақ МҚБЖ-ін өңдеуден
басқа жоба көлемінде МҚ-на сұранымдар тілін құру жұмысы жүргізілді, олардың
бірі SEQUEL (Structured English Query Language-ағылшын құрылымдық
сұранымдар тілі)-деп аталды.
70 ж соңында SystemR жобасының екінші таралымы жүзеге асырылды,
нәтижесінде жүйе ІВМ компаниясының бірнеше тапсырушыларының
компьютерлерінде орнатылды. Ол SystemR МҚБЖ-мен және оның МҚ тілімен
жұмыста алғашқы нақты тәжірибеге әкелді, ал оның аты SQL деп ауыстырылды.
Нятижесінде ІВМ компаниясы реляциялық МҚ жұмыс істеуге қабілетті және
программалық өнімдер құрудың негізі болып қызмет ете алады деген
қорытындыға келді.
SystemR жобасы және оның шеңберінде құрылған МҚ-мен жұмыс істейтін
тіл, дүние жүзінің мамандарының назарын аудартты. Осылайша, 1977 ж SQL-ға
негізделген, реляциялық МҚБЖ-ін құру үшін Relational Software Inc(қазір
Oracle Corporation) компаниясы ұйымдастырылды. Oracle деп аталған бұл МҚБЖ,
бірінші юолып 1979 ж нарыққа шықты.
Беркли қаласының университетінде (Калифорния штаты) ІВМ компаниясының
зерттеушілер тобыреляциялық МҚБЖ-нің протатибін құрды, QUEL сұранымдар
тілін қосқан өз жүйелерін Ingres деп атады. 1980 ж бірнеше мамандар
Берклиді тастап, Ingres жүйесінің коммерциялық жүйесін құру үшін Relational
Technology Inc компаниясының негізін құрды, оны нарыққа шығару 1981 ж
басталды. 1989 ж аты Ingres Corporation болып ауысқан Relational Technology
компаниясы жүйеге өзгерістер қатарын енгізген реляциялық МҚБЖ жетекші
таратушысы болып қалды. Мысалы, 1986 ж алғашқы QUEL сұранымдар тілі
табыспен SQL болып ауыстырылды.
1981 ж ІВМ фримасы SystemR негізінде, SQLDataSystem(SQLDS) деген
атпен коммерциялық өнім шығарды, ал 1983 ж тағы бір МҚБЖ-Database(DB2)
пайда болды. DB2 ІВМ компаниясының жетекші реляциялық МҚБЖ болды, және осы
жүйенің SQL тілі МҚ үшін стандарты болды. DB2-де іске асырылған технология,
кейін ІВМ компаниясының барлық бағыттарының программалық өнімдерінде,
дербес компьютерден бастап, желілік серверлерге және үлкен ЭЕМ
пайдаланылды.
80 жылдардың бірінші жартысында реляциялық МҚ таратушылар өз
өнімдерін мойындату үшін күрес жүргізді, өйткені дәстүрлі МҚ
архитектурасымен салыстырғанда, реляицлық программалық өнімдердің бірқатар
кемшіліктері болды. Бірақ реляциялық жүйелердің үлкенартықшылығы болды:
олардың реляциялық сұранымлар тілі МҚ-на сұранымлы жазбай орындау және
нәтижені бірден жазу мүмкіндігін берді.
80жылдардың екінші жартысында реляциялық МҚ болашақ технологиясы
болып санала бастады, алдыңғы версияларына қарағанда өнімділіг 2-3 есе
артық болған МҚБЖ-нің жаңа версиялары Ingres және Oracle пайда болды. 1986
ж ANSIISO-мен қабылданған SQL стандартын жариялау, SQL-ға стандарт
статусын ресми түрде жариялады. Сондай-ақ , бұл статус компьютерлік жүйелер
үшін UNIX ОЖ-сі негізінде анықталды.
Компьютердің қуатының күшеюі мен олардың жергілікті желіге
бірігуінен, дербес компьютерлер үшін күрделі МҚБЖ қажеттігі туды. Мұндай
МҚБЖ-нің таратушылары жаңа жүйелерді құруды оларға SQL-ды негіз етіп қойды,
ал мини-компьютерлердің МҚБЖ-сін таратушылар жергілікті есептеу желісінің
нарығына шықты. 90ж басында SQL таратуын жаңашаландыру және қуатты
процессорлардың пайда болуы бұл тілді транзакцияны өңдеу қосымшаларында
қолдануға мүмкіндік берді. Енді SQL ақпаратты өңдеу салыстырмалы аз шығымен
жүзеге асатын жүйеге желілік сервер ен дербес компьютерді байланыстыратын
клиентсервер архитектурасыныңкілттік бөлігі болды. Осы себепті барлық жаңа
МҚБЖ-не SQL-қолдауын енгізе бастады, SQL-ді мойындаудың маңызды қадамы бұл
тілге стандарттардың пайда болуы. SQL сьандартын ескертуде дәстүр бойынша
ANSIISO –мен тағайындалған ресми стандарт туралы сөз болады. Бірақ басқа
да маңызды SQL стандарттары бар, соның ішінде ІВМ компаниясының DB2 жүйесі,
және UNIX ортасындағы SQL үшін XOPENстандарты. 1982 ж реляциялық МҚ
тілінің ресми стандартымен ANSI-дің жұмысы басталды, және комитет өз
таңдауын SQL-ға тоқтатты. Стандарт негізі ретінде DB2 жүйесінің SQL алынды
1989 ж стандарт SQL-89 немесе SQL1 деп аталды. Осыдан кейін ANSI жұмысын
жалғастырып, жаңа жоба SQL2-ні құрды, ал одан кейінгі стандарт SQL3 үшін
басқа өзгерістер ұсынылды. SQL2 стандарты ANSI-де бекітілді және толығымен
1992 ж қазанда қабылданды.
1.3 SQL көмегімен мәліметтер қорын басқару

Реляциялық МҚ –ол жолдар мен бағандардан тұратын екі өлшемді кестеде
сақталатын байланысқан ақпарат. МҚБЖ терминінде жазу деп аталатын әрбір жол
мәліметтердің қандай да бір ерекшелігіне сәйкес келеді. Өріс деп аталатын
кестенің әрбір бағаны мәліметтердің әрбір типінің мәнінен тұрады. Олай
болса, реляциялық МҚ негізі ақпараты бар екі өлшемді кесте болып табылады.
Бірақ МҚ бір кестеден тұратын реляциялық МҚ сирек кездеседі.
Мәліметтермен күрделі және қуатты операцияларды өрнектеу үшін өзара
байланысқан ақпаратты фрагменттері арасындағы байланысқа байланысты.
Жүйенің максималды иілгіштігін қолдау үшін кестенің жолдары арнайы ретпен
орналаспауы керек. Реляциялық МҚ жүйелерінде ақпаратты реттейтін қуатты
функция бар.
Жолдардан айырмашылығы, кестенің өрістері реттеледі және оларға ат
беріледі. Яғни, кестенің әрбір бағанының кереметаты болуы керек.
Әдетте SQL бірден көп қолдаушылары бар компьютерлік жүйелерде жұмыс
істейді, сәйкесінше оларды өзара ажырату қажеттілігі туады. Әдетте мұнда
жүйеде әрбір қолданушының хұқын тексеру коды болады. Компьютермен сеанстың
басында қолданушы жүйеге өзінің арнайы ID(идентификатор) айтып кіреді.
Кірудің ID-ін пайдаланатын кез-келген адамдар саны, жеке қолданушы болып
табылады.
Көптеген SQL орталарындағы әрекеттер арнайы идентификатор- лармен
сәйкес рұқмат етілген. Кесте немесе басқа объект толық билігі бар
қолданушыға тәуелді. Және де қолданушыда объектілермен әрекеттер жүргізу
артықшылығ бар. Төменде келтірілетін мысалдарда кез-келген қолданушының
әрекеттер жасауға артықшылығы бар деп санаймыз.
Оқу мәліметтер қорының сипатамасы
Осыдан былай мысал ретінде шағын МҚ пайдаланамыз. Онда 4 кесте бар:
STUDENTS кестесі студенттер туралы ақпараттың 5 өрісінен тұрады:
▪ SNUM-студенттік билет номері;
▪ SFAM-студент фамилиясы;
▪ SIMA-студент аты;
▪ SOTCH-студенттің әкесінің аты;
▪ STIP-студент алатын стипендия көлемі;
PREDMET кестесі оқу пәндері туралы ақпараттан тұрады:
▪ PNUM-пән номері;
▪ PNAME-пән атауы;
▪ TNUM-
▪ HOURS-сағат саны;
▪ COURS-курс;
TEACHERS кестесі оқытушылар туралы ақпараттан тұрады:
▪ TNUM-
▪ TFAM-оқытушы фасмилиясы;
▪ TIMA- оқытушы аты;
▪ TOTCH- оқытушының әкесінің аты;
▪ TDATE-
USP кестесі студенттердің үлгірімі туралы ақпараттан тұрады:
▪ UNUM-
▪ OCENKA-
▪ UDATE-
▪ SNUM-
▪ PNUM-

2.SQL -командаларының типтері

Әдетте SQL -тілінің командалары бірнеше топқа бөлінеді. Командалардың
негізгі типтері келесідей:
□ DDL(Data Definition Language )- мәліметтердің анықталу тілі. Бұл
топтың командалары мәліметтер қорының объектілерінің құрылымын құру және
өзгерту(мысалы, кестелерді құру және жою үшін) үшін пайдаланылады.
□ DML(Data Manipulation Language)- мәліметтердә басқару (манипуляция)
тілі. DMLкомандалары мәліметтер қоры объектілеріндегі ақпараттарды
басқару үшін пайдаланылады.
□ DCL (Data Control Language)-мәліметтерді басқару тілі. Сәйкес
командалар мәліметтер қорында сақталған ақпаратқа кіруді басқаруға
арналған.
□ DQL (Data Query Language)-тілі. Бұл жиі қолданылатын командалар,
мәліиеттер қорына сұранымды құруға арналған.(Сұраным дегеніміз сәйкес
ақпаратты алу мақсатында мәліметтер қорына хабарласу.
□ Мәліметтер қорын администрациялау командалары әрекеттердің орындалуына
бақылауды жүзеге асыру және өндірілетін операцияларыды анализдеуге
арналған.
2.1.SQL мәліметтерінің типтері

Стандартты SQL- де пайдаланылатын мәліметтер типтерін келесі топтарға
бөлуге болады:
□ Жолдық типтер;
□ Сандық типтер;
□ Дата мен уақытты көрсетуге арналған типтар.
Бұл типтердің нақтырақ сипаттамасы.
Жолдық типтер.
SQL-де екі жолдық типтер анықталған:
□ Белгіленген ұзындықты символдық жолдар;
□ Айнымалы ұзындықты символдық жолдар.
Белгіленген ұзындықты символдық жолдар.
Белгіленген ұзындықты символдық жолдар түрінде сақталған мәліметтер,
өріске енгізілгенжолдың нақты өлшемінен тәуелсіз, жадының бір ғана көлемін
алады. ANSI-SQL-92-ге сәйкес белгіленген ұзындықты символдық жолдарды
хабарлау түрі келесідей:
Character(n)
Мұндағы n бұл хабарлау қатысты болатын өріс өлшемін анықтайтын жол
ұзындығы.
Белгіленген ұзындықты жолдарды пайдаланғанда , әдетте, бос жолдар
пробелдармен толтырылады. Мысалы, егер өлшемі 10 тең өріс беріліп, ал
оған 3 символдан тұратын жол енгізілсе, онда 7 символ пробелдармен
толтырылады.
Айнымалы ұзындықты символдық жолдар.
Айнымалы ұзындықты жолдың ұзындығы барлық мәліметтер үшін тұрақты
емес, ол мәліметтер қорының кестесі өрісінде сақталған жолдың нақты
өлшеміне тәуелді. Айнымалы ұзындықты жолды хабарлау келесі түрде болады:
Varchar(n)
n-максималды мүмкіндікті жолды анықтайтын сан.
Character типінен айырмашылығы Varchar пайдалану дискідегі кеңістікті
үнемді шығындауды қамтамасыз етеді. Хабарландыруда көрсетілген жол өлшеміне
қарамастан, өріс, енгізілген ақпаратты сақтауға қанша орын қажет болса,
сонша алады. Мысалы, егер Varchar(10) өрісі хабарланып және оған 3
символдан тұратын жол енгізілсе, онда бұл жолды сақтау үшін белгіленген
ұзындықты жол жағдайындағы сияқты 10 емес, 3 байт қана пайдаланылады.

2.2 Сандық типтер.
Сандық типтер былай бөлінеді:
□ Бүтін санды типтер;
□ Белгіленген нүктелі заттық типтер;
□ Жүзуші нүктелі заттық типтер;
□ Белгіленген және айнымалы ұзындықты екілік жолдар;
Бүтін санды типтер.
ANSI SQL стандартымен екі бүтін санды типтер орнатылады:
□ INTEGER-4 байтты пайдаланатын таңбалы бүтін сан. 2147483648-ден
2147483647-ге дейінгі диапазондағы сандарды бере алады;
□ SMALLINT–2 байтты пайдалантын таңбалы қысқа бүтін сан. 32768-ден 32647-
ге дейінгі диапазондағы бүтін сандарды бере алады.
Белгіленген нүктелі заттық типтер.
Белгіленген нүктелі заттық типтер бөлшек сандарды нақты беру үшін
арналған. Көп жағдайда бұл типтер қателіктер жіберілмейтін екілік формада
жүзгімелі нүктелі заттық сандарды беруде пайдаланылады. (Мысалы, ақшалай
шамадағы мәндерді сақтауда). Белгіленген нүктелі заттық типтер шын
мәнісінде ондық нүкте түрінде бейнеленетін бүтін санды типтер болып
табылады.

Белгіленген үтірлі типті хабарлау синтаксисі келесідей:
DECIMAL (n.m)
Мұндағы n-дәлділік; m-масштаб
Дәлділік -ол сандық мәннің жалпы ұзындығы, масштаб-ол ондық нүктеден оң
жақта орналасқан белгілер саны.
Жүзгімелі нүктелі заттық типтер.
Жүзгімелі нүктелі типтер әдетте ғылыми және инженерлік есептеулерде
пайдаланылады. Бұл типтерді пайдалануда қандай да бір санды жүзгімелі
нүктелі екілік формаға өзгерту кезінде мәліметтер қорына енгізуде үнемі
қандай да бір қателік жіберіледі. Бұл қателік өте аз болса да, кейбір
жағдайларда кешірілмейді және үлкен қателік әкелуі мүмкін, мысалы, үлкен
санды мәндерді сомалауда. Сондықтан, жүзгімелі нүктелі типтер ақшалай
шамалы мәндерді сақтауға қолданылмайды.
Көп жағдайда екі жүзгімелі нүктелі заттық типтер пайдаланылады:
□ FLOAT-бірлік дәлділікті сандар;
□ DOUBLE-екілік дәлділікті сандар.

Екілік жолдар.
Екілік жолдар салыстырмалы сирек қолданылады. Әдетте мұндай типті өрістер
жалаулар немесе екілік маскалар ретінде қолданылады.
Символдық жолдар сияқты, екілік жолдар белгіленген және айнымалы ұзындықты
болады. Белгіленген ұзындықты екілік жолдар келесі жолмен хабарланады:
BIT (n)-
Мұндағы n-байтпен берілген жол ұзындығы.
Айнымалы ұзындықты жолды хабарлау түрі мынадай:
BIT VARYING (n)
Мұндағы n- байтпен берілген жолдың максималды ұзындығы.

2.3 Күні мен уақытты берілген типтер.

Аты айтып тұрғандай бұл типтер дата мен уақытқа қатысты ақпараттарды
сақтау үшін пайдаланылады.
SQL-стандартында дата мен уақыт туралы ақпаратты сақтауға арналған келесі
мәліметтер типтері анықталған:
□ DATE-датаны сақтау үшін пайдаланылады;
□ TIME-уақытты сақтау үшін пайдаланылады;
□ TIME STAMP-дата мен уақытты сақтайды;
□ INTERVAL-екі дата мен уақыт моментіндегі уақыт аралығын сақтайды.
Кестелерді құру, түрлендіру және жою.
Кесте, ақпаратты реляционды мәліметтер қорында сақтаудың негізгі
объектісі болып келеді. Кестені құруда міндетті түрде кестедегі өріс аты,
және өрістерге сәйкес мәліметтер типі көрсетіледі. Сондай-ақ, кестені құру
кезінде өрістер үшін үндемей қабылданатын шекаралық шарттар мен мәндер
ескертілуі мүмкін.
Шектік шарттар- мәліметтер қорының кестесінің өрісінде шама мәнін шектейтін
ереже.
Үндемей қабылданатын мәндер- жаңа жазу қосқанда, егер пайдаланушы осы
өрістің мәнін көрсетпесе, мәліметтер қорының кестесінің өрісіне автоматты
түрде енгізілетін шама.
CREATE TABLE операторы.
Кестені құру үшін CREATE TABLE операторы пайдаланылады. Бұл
оператордың синтаксисі келесі түрде болады:
CREATE TABLE имя_таблицы (
Имя_поля_1 тип_данных.
Имя_поля_2 тип_данных.
_
имя_поля_N тип_данных)
Мысал, ФИЗИЧЕСКИЕ ЛИЦА кестесін құру операторы мына түрде болады:
CREATE TABLE STUDENTS
SNUM INTEGER.
SIMA CHAR (25).
SFAM CHAR (25).
SOTCH CHAR (25).
SROZH DATE.
SADR CHAR (25).
STEL VARCHAR (25).
ALTER TRABLE операторы.
Құрылған кестені ALTER TABLE операторын пайдаланып түрлендірге болады.
Осы оператор көмегімен кестеге жаңа өрістерді қосуға және жоюға, өрістер
мәліметтерінің типін өзгертуге, шектеулерді қосып немесе жоюға болады.
Жалпы түрде ALTER TABLE операторының синтаксисі былай болады:
ALTER TABLE имя_таблицы [MODIFY][имя_поля тип_данных]
[ADD][имя_поля тип_данных]
[DROP][имя_поля тип_данных]
ALTER TABLE операторымен орындалатын әрекет кесте атынан кейін көрсетіоіп
негізгі сөзбен анықталады:
□ MODIFY- өріс анықтамасын береді;
□ ADD- кесмтеге жаңа өріс қосады;
□ DROP-кестеден өрісті жояды.
Өрістің мәліметтерінің типін өзгерту үшін ALTER TABLE операторының келесі
синтаксисі пайдаланылады:
ALTER TABLE имя_таблицы ADD (имя_поля тип_данных)
Мысалы,STUDENTS кестесінестуденттің электронды почтасынан тұратын
өрісті қосу үшін келесі операторды пайдаланған жөн:
ALTER TABLE STUDENTS ADD (E-mail CHARACTER (25))
Егер бар өрістің мәліметтерінің типін өзгерту қажет болса, ALTER TABLE
операторымен бірге MODIFY негізгі сөзін пайдаланған жөн:
ALTER TABLE имя_таблицы MODIFY(имя_поля тип_данных)
Мысалы, STUDENTS кестесіне E-mail өрісін енгізгеннен кейін CHARACTER
типінің пайдаланылуының тиімсіздігі анықталады-студенттердің көбінде
электронды почта жоқ, сондықтан дискілік кеңістіктің бөлігі пайдаланылмай,
бос қалады. Бұл өріс үшін VARCHAR мәліметтер типін қолданған дұрыс.
Мәліметтер типін өзгерту үшін ALTER TABLE операторын пайдаланамыз:
ALTER TABLE STUDENTS MODIFY(E-mail VARCHAR(25))
Бар өрісті өшіру үшін ALTER TABLE операторын DROP негізгі сөзбен бірге
шақыруды орындаумен жүзеге асырылады:
ALTER TABLE имя_таблицы DROP (имя_поля)
DROP TABLE операторы.
Кестелерді жою үшін DROP TABLE операторы пайдаланылады. Бұл оператордың
синтаксисі мына түрде болады:
DROP TABLE имя_таблицы [RESTRICT CASCADE]
Егер DROP TABLE операторын шақыру кезінде RESTRICT негізгі сөзі
пайдаланылып, және жойылатын кестеге қандай да бір ұсыныс немесе шектеу
сілтелінсе, онда кестені жою операторы орындалуы кезінде қате туралы
хабарлама шығарылады (генерацияланады). Егер де CASCADE негізгі сөзін
пайдаланса, онда кестені жою орындалады және кестемен бірге оған
сілтелінетін ұсыныстар мен шектеулер де жойылады.

Сыртқы кілт шектеуі.
Сыртқы кілт шектеуі мәліметтер қорының сілтемелік тұтастығын қолдаудың
негізгі механизмі болып табылады. Сыртқы кілт болып анықталған өріс, басқа
кестенің өрісіне сілтеме ретінде пайдаланылады, әдетте ол ата-аналық кілт
деп аталады, ал сыртқы кілт сілтелетін кесте ата-аналық кесте деп аталады
(көп жағдайда ата-аналық кілт ата-аналық кілті болып табылады).
Сыртқы және ата-аналық кілттің өрістерінің типтері міндетті түрде
сәйкес болуы мүмкін. Бірақ шатыс болмас үшін сыртқы және ата-аналық кілттер
өрістерінің атын да бірдей берген жөн.
Сыртқы кілт бір өрістен тұруы міндетті емес. Алғашқы кілт сияқты
сыртқы кілт те бір объект болып өңделетін өрістердің кез-келген санынан
тұруы мүмкін. Құрамдас сыртқы кілт сілтелетін ата-аналық кілт өрістері
сыртқы кілттегі сияқты ретпен тізбектелуі керек.
Кесте өрісі сыртқы кілт болған кезде, ол қандай да бір жолмен осы кілт
сілтелетін кестемен байланыста болады. Ол дегеніміз сыртқы кілттің әрбір
мәні ата-аналық кілттегі мәнмен тікелей байланысқан.
Сыртық кілт шектеуін пайдалану иллюстрациясы ретінде қандай да бір ұжым
қызметкерлерін есептеу мәліметтер қорын мысалға аламыз (5.1 сурет). Бұл
мәліметтер қоры үш кестеден тұрады:
□ ФАКУЛЬТЕТ -қызметкерлердің мамандықтық мәліметтері туралы ақпараттан
тұрады;
□ СТУДЕНТЫ-студенттердің жеке мәліметтері туралы ақпараттан тұрады;
□ СПЕЦИАЛЬНОСТЬ-мамандығы туралы ақпараттан тұрады.
Бұл мәліметтер қорының негізгі кестесі екі басқа кестелерге сілтелетін
және сәйкесінше екі сыртық кілттері бар ФАКУЛЬТЕТ кестесі. СТУДЕНТЫ және
СПЕЦИАЛЬНОСТЬ кестелерінде ата-аналық кілттер ретінде алғашқы кілттер
пайдаланылады:

2.1 сурет. Факультет студенттерінің мәліметтер қоры

Сыртқы кілт шектеуі (FOREIGN KEY) не CREATE TABLE операторында, не
ALTER TABLE операторының көмегімен берілуі мүмкін. FOREIGN KEY шектеуінің
синтаксисі келесі түрде болады:
FOREIGN KEYимя_внешнего_ключа (список полей внешнего ключа)
REFERENCES имя_родительской_таблицы (список полей родительского ключа)
Өрістердің бірінші тізімі- үтірмен бөлінген, кестенің бін немесе бірнеше
өрістеріндегі тізім. Өрістердің екінші тізімі- ата-аналық кілтті құрайтын
өрістер тізімі. Сыртқы және ата-аналық кілттер ретінде көрсетілген өрістері
тізімі сәйкес болуы керек:
❑ Екеуінде бірдей өріс саны болуы керек;
❑ Тізімдерде өрістердің тізбектелу реті сәйкес болуы керек, және де
сәйкестік әртүрлі болатын өрістердің аттарымен емес, мәліметтер типімен
және өрістер мөлшерімен анықталады.

Байланысқан кестелі мәліметтер қорын құру мысалын қарастырамыз:
CREATE TABLE СТУДЕНТЫ (
Номер_зач_книжки INTEGER NOT NULL PRIMARY KEY.
Имя VARCHAR (25) NOT NULL.
Фамилия VARCHAR (25).
Отчество VARCHAR (25)
Дата_рождения DATE.
Адрес VARCHAR (50).
Телефон VARCHAR(25))

CREATE TABLE Специальность (
Шифр_специальности INTEGER NOT NULL PRIMARY KEY.
Должность VARCHAR(50) NOT NULL UNIQUE.
Курс INTEGER NOT NULL.
Стипендия DECIMAL(7.2)NOT NULL )

CREATE TABLE Сотрудники (
Код_сотрудника INTEGER NOT NULL PRIMARE KEY.
Код_должности INTEGER.
Код_физического_лица INTEGER NOT NULL.
Рейтинг DECIMAL(4.2).
Дата_приема DATE NOT NULL.
Дата_увольнения DATE.
FOREIGN KEY Физ_ВК (Код_физического_лица)
REFERENCES Физические_лица (Код_физического_лица)
FOREIGN KEY Долж_ВК (Код_должности)
REFERENCES Должности (Код_должности)

Сыртқы кілт кесте құрылғаннан кейін де қосылуы мүмкін-ALTER TABLE
операторының көмегімен (әрине, егер SQL жүзеге асыруы осы операторды
қолдаса). Сыртқы кілтті құруда пайдаланылатын ALTER TABLE операторының
синтаксисі келесі түрде болады:
ALTER TABLE имя_таблицы
ADD CONSTRAINT имя_внешнего_ключа FOREIGN KEY (список полей внешнего ключа)
REFERENCE имя_родительской_таблицы (список родительского ключа)

Сыртқы кілт кестеге енгізуге болатын мәндерді шектейді. Сыртқы кілтті
құрайтын өрістерге қандай да мәндерді енгізу үшін, бұл мәндер ата-аналық
кестеде енгізіліп тұруы қажет. Мысалы, СОТРУДНИКИ кестесіне оның жеке
мәліметтері туралы жазу болуы қажет, әйтпесе "Код_физического_лица"
міндетті өрісін толтыру мүмкін емес болады.
Сыртқы кілт үшін NOT NULL шектеуі берілуі мүмкін, бірақ ол міндетті емес,
тіпті кей жағдайларда қажетті емес. Мысалы, ұжымға жұмысқа жаңа қызметкер
қабылданады, бірақ әлі оның қызметі анықталмаған деп болжайық. Бұл жағдайда
ол туралы барлық қажетті мәліметтерді ФИЗИЧЕСКИЕ ЛИЦА және СОТРУДНИКИ
кестесіне енгізуге болады, "Код_должности" өрісінде ештеңе көрсетпей.
Сыртқы кілт шектеуі де ата-аналық кестенің жазуларын жойып және
түрлендіруге әсер етеді. Сыртқы кілт сілтелетін ата-аналық кілттің ешқандай
мәні жойылмайды немесе өзгертілмейді. Ол дегеніміз, мысалы, ФИЗИЧЕСКИЕ ЛИЦА
кестесінен қызметкерлер туралы жазуды өшіруге болмайды, егер ол СОТРУДНИКИ
кестесіндегі жазумен байланыста болса. Ол түсінікті-егер СОТРУДНИКИ
кестесінде фирма қызметкерлері туралы жазу бар, ал ФИЗИЧЕСКИЕ ЛИЦА
кестесінен ол қызметкер туралы жазу жойылса, онда оның жеке мәліметтері
туралы ақпарат жойылып қалады. Егер қызметкер жұмыстан шығып кетсе және ол
туралы жазу СОТРУДНИКИ кестесінен өшірілсе, онда оның жеке мәліметтері
туралы ақпаратты сақтаудың қажеттіліг жоқ және ФИЗИЧЕСКИЕ ЛИЦА кестесінен
сәйкес жазу да өшірілуі мүмкін.
Дәл сол сияқты қандай да бір сыртқы кілт сілтелетін ата-аналық кілт
мәндерін де өзгертуге болмайды, -ол ақпараттың жоғалуы мен мәліметтер
қорының сілтемелік тұтастығының бұзылуына әкеледі.
Каскадтық жаңарту мен жолдың синтаксистік варианттарының бірі келесі болыр
табылады:
UPDATE OF имя_родительской_таблицы CASCADES
DELETE OF имя_родительской_таблицы CASCADES
UPDATE OF және DELETE OF кілттік фразалары CREATE TABLE операторында
көрсетіледі. CASCADES кілттік фразасының орнына RESTRICTED сөзін көрсетуге
болады-бұл жағдайда осы кестеден сыртқы кілт сілтелетін ата-аналық кілттің
мәндерін өзгертіп және жоюға шек қойылады:
CREATE TABLE СОТРУДНИКИ (
Код_сотрудника INTEGER NOT NULL PTIMARY KEY.
Код_должности INTEGER.
Код_физического_лица INTEGER NOT NULL.
Рейтинг DECIMAL(4.2).
Дата_приема DATE NOT NULL
Дата_увальнения DATE.
FOREIGN KEY Физ_ВК (код_физического_лица)
REFERENCES Физические_лица (код_физического_лица)
FOREIGN KEY Долж_ВК (Код_должности)
REFERENCES Должности (Код_должности)
UPDATE OF Физические_лица CASCADES
DELETE OF Физические_лица RESTRICTED).

Шектеуді бірнеше өрістер үшін де беруге болады. Ол үшін оларды шектік
шартқа қосса болғаны. Бірнеше щарттарды кірістіретін күрделі шектеулерді
тұжырымдау үшін AND және OR операторлары пайдаланылады. ДОЛЖНОСТЬ
кестесінде, мысалы,минималды еңбекақыға шектеу енгізуге болады:
CONSTRAINT CHK_RATE CHECK (разряд=20 AND Зарплата=1000))
Үнсіз қабылданатын мәндерді беру
Кесте өрістері үшін, егер бұл өрістер мәні анықталмаса, кестеге
жаңажазу қосқанда өрістерге енгізілетін тыңғылықты мәндерді беруге болады.
Үндемей қабылданатын мәндерді беру үшін өрісті сипаттау кезінде CREATE
TABLE командасында көрсетілетін DEFAULT директивасы пайдаланылады:
CREATE TABLE (
...
имя_поля_N тип_данных DEFAULT=значение_по_умолчанию
...
)
Қарастырылып отырған мысалда үндемей қабылданатын мән СОТРУДНИКИ кестесінің
"Рейтинг" өрісі үшін берілуі мүмкін:
CREATE TABLE СОТРУДНИКИ (
Код_сотрудника INTEGER NOT NULL PRIMARY KEY.
Код_должности INTEGER.
Код_физического_лица INTEGER NOT NULL.
Рейтинг DECIMAL (4.2) DEFAULT=0.
Дата_приема DATE NOT NULL.
...)
Индекстарды құру және жою.

Қазіргі кезде ANSI стандарты индекстарды қолдамайды. Сонда да
индекстар барлық мәліметтер қорында кең қолданылады, сондықтан олармен
жұмысты назардан тыс қалдыруға болмайды.
Индексті құру операторының синтаксисі пайдаланылатын SQL таратуына
қарай өзгешеленуі мүмкін. Индексті құру командасының келесі синтаксистік
формасы жиі кездеседі:
CREATE INDEX имя_индекса
ОN имя_таблицы (имя_поля_1.[имя_поля_2...])

Ұсыныстармен жұмыс.

Ұсыныс (VIEW) мәліметтер қорының объектісі. Онымен жұмыс қарапайым
кестемен жұмыстан өзгешеленбейді. Ұсыныстардың кестелерден айырмашылығы
келесіде. Мәліметтер қорының қарапайым кестелері мәліметтерден тұрады.
Ұсыныстар мәліметтерден тұрмайды, ал олардың мазмұны басқа кестелерден
таңдалынады (немесе басқа ұсыныстардан). Ұсыныстар тұжырымдалатын кестелер
(немесе ұсыныстар) базалық кестелер (немесе базалық ұсыныстар) деп атау
қабылданған.
Шындығында ұсыныстар әрбір хабарласқан сайын орындалатын сұраныс болып
табылады. Әрбір уақыт мезетінде осы сұраныстың орындалу нәтижесі ұсыныс
мазмұны болып табылады. Ұсыныстың базалық кестесіндегі мәліметтерді
өзгертсе ұсыныс мазмұны да өзгереді.
Ұсыныс мазмұнын өзгертсе, осы ұсынысты құруда негізге алынған кесте мазмұны
да өзгереді. Төменде ұсыныстың тұжырымдалу процесінің схемасы берілген:

2.2 сурет. Ұсыныстың тұжырымдалу схемасы.

Ұсынысты пайдалану кесетені пайдаланудан өзгешеленеді. Ұсыныс- тардан
мәліметтерді таңдау қарапайым кестедегі сияқты орындалады. Сондай-ақ
ұсыныстың мәліметтермен басқару операцияларына рұқсат етіледі, бірақ ол
мұнда кейбір шектеулер болады.
Ұсыныстар кестелерден айырмашылығы дискілік кеңістіктен орын алмайды
(немесе дәлірек айтсақ, ұсыныс алатын дискілік кеңістік өте кішкентай-тек
сұранысты сақтауға қажеттілері).
Ұсыныстың қолданылу облыстары.
Ұсыныстар көбінде екі жағдайда қолданылады:
□ Мәліметтерді қорғау мақсатында,
□ Қорытынды мәліметтерді тұжырымдау үшін.
Бірінші жағдайда ұсыныстар бүкіл кестеден емес, тек кейбір өрістеріндегі
ақпараттарды беру үшін қолданылады.
Келесі мысалды қарастырайық. Мысалы, "СОТРУДНИКИ " кестесінің "Рейтинг"
өрісінде сақталатын қызметкерлердің рейтингтері туралы ақпарат құпиялы
болып есептелсін, және оларға кіру хұқы тек ұжым жетекшілерінде ғана
болсын. Бірақ осы кестеде сақталатын ақпарат бөләгә кадрлар бөлімінің
жұмысшыларына қажет-қызметкерлердің аты туралы және жұмысқа қабылдау күні
туралы мәліметтер. Бұл жағдайда бір кестеге кіру рұқсатын шексіздеу үшін
кадрлар бөлімінің қызметкерлерінде кіруге рұқсат болуға тиістіақпараттарды
ғана таңдап ұсынысты пайдаланған ыңғайлы. Сонда олар өз қызметтік міндетін
толық көлемде орындай алады және құпиялы ақпаратқа кіру рұқсаты болмайды.
Ұсыныстар өрістерге ғана емес, сондай-ақ кесте жазуларына кіру
рұқсатына шек қою үшін пайдаланылады. Ол үшін ұсынысты құруда негізге
алынатын мәліметтерді таңдау сұранысында сәйкес шектеулік шарттарды
көрсетсе болғаны. Мысалы, жоғарыда көрсетілген кадрлар бөлімінің
жұмысшыларының мысалында ұсыныс құруда ұсыныстан қандай да міндетті алып
тұратын жұмысшыларды шығарып тастау шартын беруге болады.
Сондай-ақ ұсыныстар есептерді тұжырымдауда қорытынды нәтижелерді
тұжырымдау үшін де пайдаланылады. Өзгермелі ақпаратты кесет негізінде
тұжырымдалатын есептерді жиі баспаға шығару қажет болған жағдайда,
ұсыныстарды пайдаланған ыңғайлы.
Ұсыны, сұраныс негізінде құрылуы мүмкін болғандықтан ақпаратты базалық
кестелер қатарынан алатын және қажеттілікпен топтайтын ұсыныс құруға
болады, ал есепті шығарар кезде осы ұсынысқа қарапайым кесте сияқты
хабарласуға болады. Бұл жағдайда есепті шығарған сайын күрделі SQL-сұраныс
құрудың қажеті жоқ. Сондай-ақ, бұл жағдайда логиканың бөлігі мәліметтер
қорының сервер жағына шығарылып тасталады, өйткені есептің тұжырымдалуы
клиенттік қосымшадан тәуелді болмайды.
Ұсыныстарды құру.
Ұсыныстарды құру үшін CREATE VIEW операторы пайдаланылады. Ұсыныс бір
немесе бірнеше ұсыныстар негізінде құрылуы мүмкін. Ұсынысты құрудың
операторының типтік синткасисінің түрі келесідей:
CREATE VIEW имя_представления AS
{оператор выборки данных}
Ұсыныс құрылған соң онымен ұсыныс аты ретінде берілген аты бар
қарапайым кесте сияқты жұмыс істеуге болады. Қандай да бір өзгешелігі
топтау сөйлемі бар ұсыныстар. Мұндай ұсыныстар үшін мәліметтер таңдауда
ешқандай шектеу жоқ, бірақ оларға мәліметтерді басқару операторын
қолданбайды.
Ұсыныстарды жою.
Ұсыныстарды жою DROP VIEW операторының көмегімен орындалады, оны
шақырғанда RESTRICT және CASCADE параметрлері көрсетілуі мүмкін. Бұл
параметрлер басқа ұсыныстар жәненемесе шектеулер сілтелетін ұсыныстарды
жою кезіндегі әрекеттерді анықтайды. RESTRICT вариантын падаланғанда, бұл
жағдайда қате туралы хабарлама шығарылады, және жою орындалмайды. Егер
CASCADE режимі пайдаланылса, онда DROP VIEW операторының орындалуы, базалық
ұсыныстардың және шектеулердің жойылуына әкеледі.
DROP VIEW операторының типтік синтаксисі келесі түрде болады:
DROP VIEWимя_представления [RESTRICT CASCADE]

Сақталатын процедуралар, оларды құру, орындау және жою

Сақталатын процедуралар (Stored Procedure)- олар байланысқан SQL-
операторларының топтары. Сақталатын процедураларды пайдалану мәліметтер
қорымен жұмыстың қосымша икемділігін қамтамасыз етеді, өйткені сақталатын
процедураларды орындау SQL жеке операторлар тізбегінен әлдеқайда
қарапайымдау.
Сақталатын процедуралар орындалудың жоғары жылдамдығын қамтамасыз
ететін мәліметтер қорында компиляцияланған түрде сақталады.
Сақталатын процедураларға кіретін параметрлер ала-алады, қосымшаға
мәндерді қайтарады және қосымшадан шақырылады.
Сақталатын процедураларды пайдаланудың негізгі артықшылықтары келесіде
қорытындыланады:
□ Сақталатын процедуралар логика бөлігін мәліметтер қорының серверіне
шығаруға мүмкіндік береді. Ол ақпараттық жүйенің мәліметтер қорының
клиенттік бөлігінен тәуелділігін әлсіретеді;
□ Сақталатьын процедуралар жобаның модульдігін қамтамасыз етеді. Олар
бір мәліметтер қорына хабарланатын клиенттік қосымшалар үшін жалпы
болады, ол кодтың қайталануын болдырмайды және қосымша өлшемін
кішірейтеді;
□ Сақталатын процедуралар қосымшалардың бәрге жүруін
оңайлатады:процедуралар жаңартқан кезде өзгерулер автоматты түрде барлық
қосымшаларда бейнеленеді;
□ Сақталатын процедуралар ақпараттық жүйенің жұмысының тиімділігін
арттырады:олар клиентпен емес, желілік трафикті төмендететін сервермен
орындалады;
□ Сақталатын процедуралардың орындалу жылдамдығы жеке SQL операторлар
тізбегінен жоғары. Ол сақталатын процедуралардың серверде
компиляцияланған түрде сақталуына байланысты.
Сақталатын процедуралардың екі түрін бөледі:
□ Таңдау процедуралары қосымшалар оларды мәліметтерді таңдау операторында
кесте немесе ұсыныстар орнына пайдалануы мүмкін;
□ Орындалатын процедуралар олар арнайы операторлар пайдаланылып
шақырылады. Орындалатын процедура шақырылатын программаның нәтижелерін
қайтармауы мүмкін.

Сақталатын процедураларды құру.

Сақталатын процедураларды құру үшін CREATE PROCEDURE опрераторы
пайдаланылады.
CREATE PROCEDURE операторы мәліметтер қорынан жаңа сақталатын процедураны
анықтайды. Процедуралар тілі SQL таратуларынан тәуелді, бірақ ереже бойынша
SQL барлық инструкцияларын және мыналарды қосады:
□ Шартты операторлар;
□ Цикл операторларының әртүрлі түрлерін;
□ Ерекше жағдайларды өңдеу мүмкіндіктерін.
Сақталатын процедуралар тақырыптан және денесінен тұрады. Процедураның
тақырыбы:
□ Мәліметтер қорындағы кесте мен процедура аттарының ішінде ерекше болуы
тиіс процедура атынан;
□ Процедура шақырылатын программадан қабылдайтын кіретін параметрлер және
олардың мәліметтері типтерінің тізімінен;
□ Шығатын параметрлер және олардың мәліметтері типтерінің тізімінен
тұрады, егер процедура мәндерді шақырылатын программаға қайтарса.
Процедура денесі мыналардан тұрады:
□ Жергілікті айнымалылар және олардың мәліметтері типтерінің тізімінен
(егер олар процедура кодында пайдаланылса);
□ BEGIN және END кілттік сөздерінің арасында қорытылған процедуралар және
триггерлер тіліндегі инструкция блогынан.
Сақталатын процедураларды орындау.
Сақталатын процедураны орындауға жіберетін оператор процедураға
тәуелді болады. Таңдау процедурасы оларға SELECT -мәліметтерді таңдау
операторының көмегімен хабарласқанда орындалады.
Орындалатын процедураны шақыру үшін арнайы EXECUTE операторын пайдаланған
жөн.
Сақталатын процедураларды жою.
Сақталатын процедураларды жою үшін DROP PROCEDURE операторы
пайдаланылады. Бұл оператор синтаксисі келесі түрде болады:
DROP PROCEDUREимя_хранимой_процедуры

Мәліметтерді басқару, кестедегі берілгендерді өзгерту
Мәліметтер қорында сақталатын мәліметтерді ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
PHP тілі. PHP-мен бірге жұмыс істейтін құралдар
Қосымшалар серверлерін жасау
Ақпараттық жүйелер мамандығы
Кафедраның тәрбие жұмысына бағытталған мобильді қосымшаның сервері
Кәсіпорын клиенттер мәлімдемелерін есепке алу үшін веб серверлер
PHP- мен бірге жұмыс істейтін сервердің классикалық құралы- APACHE +PHP+MySQL
Компьютерлік жүйелерді жасау принциптері
Маркетингтегі ақпарат жүйесін тұрғызу
Оқу орны мысалындағы реляциялық деректер қорында сабақ кестесін құрастыру
WEB-сервер түсінігі және оны ұйымдастыру кезеңдері
Пәндер