Кафе жұмысын автоматтандыру (Delphi ортасында)
МАЗМҰНЫ
КІРІСПЕ 2
1 DELPHI ППРОЦЕДУРАЛАР ҰҒЫМЫ 4
1.1. Процедуралар 7
1.2. Функциялар 8
1.3 Рекурсивтік ішкі бағдарламалар 9
2 СҮЗГІЛЕУ ТӘСІЛДЕРІ 11
2.1 SQL даму тарихынан 12
2.3 SQL көмегімен мәліметтер қорын басқару 15
2.4 SQL .командаларының типтері 17
2.5 Сандық типтер 19
3 ДӘМХАНА ЖҰМЫСЫН АВТОМАТТАНДЫРУ 27
3.1 Программаны сипаттау 27
3.2 Тағамдар мен қызметкерлер тізімін толтыру 27
3.3 Тапсырыс алу 28
ҚОРЫТЫНДЫ 30
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР 31
ҚОСЫМША 32
КІРІСПЕ 2
1 DELPHI ППРОЦЕДУРАЛАР ҰҒЫМЫ 4
1.1. Процедуралар 7
1.2. Функциялар 8
1.3 Рекурсивтік ішкі бағдарламалар 9
2 СҮЗГІЛЕУ ТӘСІЛДЕРІ 11
2.1 SQL даму тарихынан 12
2.3 SQL көмегімен мәліметтер қорын басқару 15
2.4 SQL .командаларының типтері 17
2.5 Сандық типтер 19
3 ДӘМХАНА ЖҰМЫСЫН АВТОМАТТАНДЫРУ 27
3.1 Программаны сипаттау 27
3.2 Тағамдар мен қызметкерлер тізімін толтыру 27
3.3 Тапсырыс алу 28
ҚОРЫТЫНДЫ 30
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР 31
ҚОСЫМША 32
Пән: Информатика, Программалау, Мәліметтер қоры
Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 31 бет
Таңдаулыға:
Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 31 бет
Таңдаулыға:
МАЗМҰНЫ
Кіріспе 2
1 DELPHI Ппроцедуралар ұғымы 4
1.1. Процедуралар 7
1.2. Функциялар 8
1.3 Рекурсивтік ішкі бағдарламалар 9
2 Сүзгілеу тәсілдері 11
2.1 SQL даму тарихынан 12
2.3 SQL көмегімен мәліметтер қорын басқару 15
2.4 SQL -командаларының типтері 17
2.5 Сандық типтер 19
3 Дәмхана жұмысын автоматтандыру 27
3.1 Программаны сипаттау 27
3.2 Тағамдар мен қызметкерлер тізімін толтыру 27
3.3 Тапсырыс алу 28
Қорытынды 30
Қолданылған әдебиеттер 31
Қосымша 32
Кіріспе
Жиырма бірінші ғасырдың басталуы жаппай ақпараттық қоғамға көшумен
сипатталады. Оған компьютерлік техника, ақпараттық технология және басқа да
ғылыми-техникалық прогресс әсерін тигізуде. Қазақстан Республикасы ғылыми-
техникалық прогрестің негізгі белгісі болып табылатын қоғамды
ақпараттандырудың жаңа кезеңіне енді. Қоғамды ақпараттандыру – еліміздің
экономикасының, мәдениетінің, ғылымының дамуының негізгі алғышарты.
Менің курстық жұмысымда дәмханадағы әкімшілік (администратор) жұмысын
автоматтандыру мақсаты қойылды. Дәмханадағы әрбір жұмысшының қанша ақша
түсіргендігін реттейтін, әрбір столдың жеке қабылдау сияқты жұмыстарын
автоматтандыру – осы курстық жұмыстың қойылған талаптарының бірі. Ал
теориялық бөлімде процедуралар мен функциялар туралы, мәліметтерді
сұраныстар арқылы сүзгілеу және курстық жұмыстың бағдарламасын сипаттау.
1 DELPHI Ппроцедуралар ұғымы
Бағдарламалау барысында көптеген бір типті есептеулерге бірнеше бір-
біріне ұқсас бағдарлама фрагменттерін қайта-қайта жазуға тура келеді.
Осындайда артық жұмыс жасамай, барлық есептеулерді бір ғана фрагмент ішінде
орындау үшін, көмекші бағдарламалар - процедуралар мен функциялар
қолданылады. Мысалы бағдарлама орындау барысында бірнеше рет ұқсас
есептеулер кездессе, онда есептеу блогын бір-ақ рет көмекші бағдарламаға
жазып қойып, бағдарламаның кез-келген нүктесінен көмекші бағдарламаны
шақырып, осы блок арқылы есептеуді шығаруға болады.
Сонымен көмекші бағдарламалар деп бағдарламаның орындалу барысында
бірнеше рет шақырылып орындалып тұратын операторлар блогынан тұратын
көмекші бөлігін айтады.
Көмекші бағдарламалар стандартты және пайдаланушылар көмекші
бағдарламалар болып екіге бөлінеді. Стандартты функциялар мен процедуралар
Delphi тілінің құрамында тұрақты системалық атпен аталып орындалады. Оларға
арнаулы USES пайдаланушылар кітапханасында орналасқан - Windows, Messages,
SysUtils, Variants, Classes, Graphics, Controls, Forms модульдерінің
барлық функциялары мен процедуралары жатады.
SYSTEM модулінің процедуралары мен функциялары Delphi бағдарламасымен
бірге автоматты түрде іске қосылады, сондықтан оны пайдаланушылар бөлімінде
көрсетпесе де болады.
SYSTEM модулінен өзге модульдердің процедуралары мен функцияларын
қолдану үшін бағдарламаның басында міндетті түрде олардың аттарын USES
пайдаланушылар бөлімінде көрсетіп кету керек, мысалы:
USES unit2;
Стандартты функциялар мен процедуралардың көбісі бұдан бұрынғы
бөлімдерде бағдарлама құруда пайдаланылды, мысалы:
Abs(X); Х-тің абсолютгік шамасын есептеу функциясы
Sln(X); Х-тің синусын есептеу функциясы
Random(X); 0-ден Х-ке дейінгі кездейсоқ сан шығару
Delay(X); бағдарламаныңорындалуынX мс уақытқа тоқтату
Clrscr; экранды тазалау процедурасы
Halt; бағдарламаның орындалуын тоқтату процедурасы
...т.б.
Пайдаланушылар көмекші бағдарламалар деп бағдарламашының өзі құрып,
аты да өзіне ыңғайлы бір идентификатормен белгіленетін процедуралар мен
функцияларды атайды. Олар бағдарламаның VAR бөлімінен кейін PROCEDURE
немесе FUNCTION қызметші сөздерімен басталып құрылады:
Ішкі бағдарлама құрылымы:
1. Көмекші бағдарлама қызметші сөзі көмекші бағдарлама тақырыбы;
2. Көмекші бағдарламада кездесетін идентификаторларды сипаттау бөлімдері;
3. Көмекші бағдарлама денесі.
Көмекші бағдарламалардың жазылу тәртібі де негізгі бағдарлама сияқты
бірнеше бөлімдерден тұруы мүмкін, мысалы:
а) Көмекші бағдарлама аты, параметрлері жазылатын тақырыбы;
ә) Тұрақтылар бөлімі;
б) Типтер бөлімі;
в) Айнымалылар бөлімі;
г) Операторлардан тұратын бағдарлама денесі.
Ішкі бағдарламаның аты идентификатормен белгіленеді. Бағдараламада
бірнеше процедура немесе функция болуы мүмкін. Сол сияқты, көмекші
бағдарламаның да өзінің көмекші бағдарламасы болуы мүмкін. Оларды ішкі
бағдарламалар деп атайды. Негізгі бағдарламада сипатталған
идентификаторларды көмекші бағдарламаның ішінде де сол сипатталған типпен
қолдануға болады. Олармен белгіленген айнымалылар глобальды деп атайды. Ал
көмекші бағдарламада сипаттапған идентификаторды тек өзінің ішкі
бағдарламасында ғана қолдануға болады. Ол айнымалыларды локальды
(жергілікті) деп атайды.
Ішкі бағдарлама өздігінен орындалмайды, оның орындалуы үшін негізгі
бағдарламада көмекші бағдарламаның аты мен параметрлерін жазып шақырады, ол
жерді көмекші бағдарламаны шақыру нүктесі деп атайды.
Ішкі бағдарламалардың орындалу саны шақыру нүктелерінің санына
байланысты болады. Егер негізгі бағдарламада бірде-бір шақыру нүктесі
болмаса, онда көмекші бағдарлама орындалмайды. Бағдарлама орындалу
барысында алдымен негізгі бағдарлама орындалады да, керек кезде көмекші
бағдарлама шақырылады. Көмекші бағдарламаны шақыру нәтижесінде негізгі
бағдарлама уақытша тоқтайды да, басқару көмекші бағдарламаға барады.
Көмекші бағдарлама денесі, негізгі бағдарламадан алған деректерді толық
өңдеп, орындалғаннан кейін, басқаруды шақыру нүктесіне өңделген жаңа
деректермен бірге қайтарып береді де, негізгі бағдарлама орындалуын әрі
қарай жалғастырады.
Негізгі бағдарламадан деректер қабылдау және көмекші бағдарламалардан
өңделіп жаңарған деректерді негізгі бағдарламаға қайтару көмекші
бағдарламалар параметрлері көмегімен атқарылады. Процедура мен
функциялардың нақты және формальды параметрлері болады. Бағдарлама
орындалу барысында есептелетін параметрлер нақты деп, ал көмекші
бағдарламалардың тақырыбында көрсетілетін параметрлер формальды деп
аталады.
Нақты және формальды параметрлердің типі, саны, реттілігі сәйкес болуы
тиіс. Олар бірдей белгіленуі де мүмкін. Нақты параметрлер тұрақтылардан,
айнымалылардан және өрнектерден тұруы мүмкін. Кей жағдайларда көмекші
бағдарламаның формальды параметрлерін көрсетпесе де болады.
1.1. Процедуралар
Процедура деп белгілі бір идентификатормен аталып, сол атпен
бағдарламаның кез-келген жерінен шақырып, белгілі бір есептеулерді
орындауға болатын бағдарламаның тәуелсіз бөлігін айтады. Процедураның
құрылымы бағдарлама құрылымына ұқсас келеді.
Процедуранын кұрылымы:
{тақырыбы:}
PROCEDURE аты(формальды параметрлер:типтері);
Сипаттамалар бөлімдері; (*бұл бөлімдер болмауыда мүмкін*)
BEGIN Операторлар; (*процедура денесі*)
END;
Бағдарламада процедураны пайдалану үшін процедураның атын нақты
параметрлерімен бірге жазып шақырады, ол жерді процедураны шақыру нүктесі
деп атайды. Бағдарлама процедураның шақыруын оқыған кезде процедураның
орындалуы басталады. Мысалы бағдарлама тақырыбы төмендегідей болса:
PROCEDURE SUMMA(N, M,X:INTEGER);
онда процедураны бағдарламаны мынадай жолмен шақыруға болады:
SUMMA(19,A,50);
жақшадағы 19, А, 50 - нақты параметрлер болып табылады. Нәтижесінде
процедурадағы формальды параметрлер мынадай мәндерге ие болады:
N=19, M=A, X=50.
Процедура шақыру процесінде формальды параметрлердің мәндері нақты
параметрлердің мәнін қабылдайды да, процедура денесіндегі есептеулерде сол
жаңа мәндер пайдаланылады.
Процедураның параметрлері мәндік және айнымалы болып екіге бөлінеді.
Мәндік (аргументгік) параметрлер тек қана нақты параметрлердің мәнін өзіне
қабылдайды да, қайтып оларға өзінің мәнін бере алмайды. Ал айнымалы
параметрлер нақты параметрлердің мәнін қабылдап, оларды процедураның
орындалу барысында өзгертіп, нақты параметрлерге жаңа мәндерін қайтып
береді. Процедураның бір орындалу барысында негізгі бағдарламаның бірден
бірнеше идентификаторлары жаңа мән қабылдай алады. Айнымалы параметрлердің
алдына VAR қызметші сөзі қойылып жазылады. Мысалы:
PROCEDURE Misal(A, B:Integer; VAR X, Y:Longint);
VAR Silnteger;
BEGIN
S:=A+5*B; X:=Sqr(S); Y:=Sqr(X);
END;
Бұл процедураны бағдарламалық тексте төмендегідей жазып шақыруға болады:
Misal(10,5,K,І);
Бағдарлама орындалу барысында Misal(l0,5,K,І) шақыру идентификаторын
оқып, басқаруды Misal процедурасына жібереді де, төмендегідей әрекеттер
орындалады:
1. Процедураның А, В, X, Ү формальды параметрлері 10, 5, К, I нақты
параметрлердің мәнін қабылдайды:
А=10, В=5, Х=К, Ү=І;
2. Процедура денесіндегі операторлар орындалады:
3=10+5*5=35, Х=35*35=1225, Ү=1225* 1225=1500625;
3. VAR қызметші сөзінен кейін жазылған формальды X және Ү
параметрлері процедураның орындалу барысында меншіктеген өздерінің жаңа
мәндерін нақты К-мен I параметрлеріне бергеннен кейін, басқару
Misal(10,5,K,l) шақыру идентификаторынан кейін тұрған операторға өтеді;
К=Х=1225, І=Ү=1500625.
4. Әрі қарай бағдарламаның есептеулерінде К және I айнымалылары
жаңа меншіктеген мәндерімен қатысады.
1.2. Функциялар
Функциялардың атқаратын қызметі мен жұмыс принциптері процедураларға
ұқсайды. Функцияның процедуралардан негізінен екі айырмашылықтары бар:
1. Функциялар өрнек операндалары ретінде қолданыла береді;
2. Функция шақыру нүктесіне бір ғана өзінің атына меншіктелген
скалярлық шаманы қайтарады. Процедуралар шақыру нүктесіндегі бірнеше
идентификаторға жаңа мәндер қайтарып бере алса, ал функциялар бір шақыру
нәтижесінде бір ғана идентификаторға жаңа мән бере алады.
Функциянын кұрылымы:
FUNCTION Аты(формальды параметрлер:типтері):типі;
Сипаттамалар бөлімдері; (*бұл бөлімдер болмауыда мүмкін*)
BEGIN Операторлар бөлімі;
аты: =( *функция жаңа мән меншіктейді *) (*функция денесі *)
END;
Функциялар да процедуралар сияқты шақырылады. Негізгі бағдарламаға
жаңа мән беру үшін функция денесінде функцияның идентификаторы кемінде бір
мән меншіктеуі тиіс. Шақыру нүктесіне функцияның соңғы меншіктеген нәтижесі
жаңа мән болып қайтарылады.
1.3 Рекурсивтік ішкі бағдарламалар
Көмекші бағдарламалардың денесіндегі операторлардың орындалу
барысында өзін-өзі шақыру процесі рекурсия деп аталады. Рекурсивті
бағдарламаларда көмекші бағдарламаның орындалуы есептеу параметрінің
белгілі бір мәнінен бастап тізбектей төменгі деңгейлі мәніне қарай қашан
есептің тривиальды нәтижесі алынғанға дейін жүреді. Функцияның әр
рекурсивті орындалуында оның алдыңғы айнымалылары бағдарламалық ағым деп
аталатын жадта сақталады. Рекурсивті функциялар құрғанда бағдарламалық
ағымның шексіз емес екендігін есте ұстаған жөн (егер ағым толып кетсе,
бағдарламаның орындалуы үзіліп кетеді). Рекурсияның мысалы ретінде
төмендегі N санының факториалын табатын функцияны келтіруге болады:
N санынын Факториалын табу үшін рекурсия кұру мысалы:
PROGRAM Recurs;
VAR N:lnteger; F:Longint;
FUNCTION Fact(N:lnteger):Longint;
Begin
lfN0 Then Begin Writeln(N-ді дұрыс енгізіңіз');
Fact:=0 End Else іf N=1 Then
Fact:=1 Else Fact:=N*Fact(N-1);
End;
BEGIN Readln(N);
F:=Fact(N); Writeln('FN=',F);
Readln END.
Бұл бағдарламаның орындалу барысында негізгі бағдарламадан Fact
функциясы шақырылады. Функцияның денесі N санын 0-мен салыстырудан
басталады. Егер сан теріс немесе 0-ге тең болса, онда функция 0-ді
меншіктейді де орындалуын тоқтатады. Егер сан 1 -ге тең болса функцияның
мәні 1 -ді меншіктейді де орындалуын тоқтатады. Егер санның мәні 1-ден
артық болса, онда басқару Fact:=N*Fact(N-1) операторына барады да N-нің
мәні 1-ге дейін жеткенше функцияның орындалуы қайталанады(факториалдың
тривиальді мәні 1-ге тең болғандықтан N=1). Функция рекурсивті процес
тоқтағаннан кейінгі көбейтінді нәтижесін меншіктейді де орындалуын
тоқтатады. Мысалы N=5 болғанда Fact функциясы төмендегідей орындалады:
N=5; 51; Fact=5*Fact(4);
N=4; 41; Fact(4):=4*Fact(3);
N=3; 31; Fact(3):=3*Fact(2);
N=2; 21; Fact(2):=2*Fact(1);
N=1; 1=1; Fact(1):=1;
2 Сүзгілеу тәсілдері
1987 жылы SQL маманданған реляциялық МҚБЖ үшін стандартты тіл болып
барлық кең таралған жүйелерге ене бастады. Ол келесі момнеттерімен
байланысты. Тез әрекеттіліктің өсуі, және энергияны тұтынудың,компьютер
өлшемдері мен бағаларының төмендеуі, тұтыну нарығының, қолданушылар
ортасының және түрлері мен бағаларының кеңеюіне әкеліп соқты. Сондай-ақ,
әртүрлі программалық жабдықтауларға да сұраныс көбейді. Сатып алушы
фирмаларға күресте, программалық жабдықтаушылар нарыққа интеллектуалды, әрі
көлемді программалар кешенін шығара бастады. Олар сатып ала отырып,
көптеген ұжымдар мен жеке қолданушылар ол программаларды өз компьютерлеріне
орната алмадй. Ақпаратпен алмасу және оларды тарату үшін ЭЕМ желілері
құрылды, онда программалар мен мәліметтерді арнайы файлдық сервер лерге
орналастырды.
Файлдық серверлермен жұмыс істейтін МҚБЖ, бір-бірінен алыс ара-
қашықтықта орналасқан әртүрлі ЭЕМ қолданушыларына бір МҚ кіру мүмкіндігін
берді. Мұндай жағдайда ұжымдарды, оқу кешендерін, ақпараттық және басқа
жүйелерді әртүрлі автоматталған басқару жүйелерін өндіру оңайлатылады.
Бірақ бұл кезде қарапайым сұраным құру үшін де файлдық серверден немесе
серверге файлдарды жазу керек болады, ал ол конфликтілік ситуайияларды
туғызуы мүмкін. Мұндай кемшіліктерді бодырмау үшін клиентсервер
технологиясы ұсынылған боатын, бірақ ол үшін сервермен хабарласу тілі қажет-
мұндай тіл ретінде SQL таңдалды.
SQL концепцияларында операциялардың мәліметтердің кесте түрінде
берілуіне бағытталуы, аз сөйлемді жинақы тілді құруға мүмкіндік берді. SQL
сұранымдарды орындау үшін, және де қолданбалы программаларды құру үшін де
пайдаланылуы мүмкін. Онда келесі сөйлемдер бар:
- Мәліметтерді анықтау тілі-МҚ анықтау, және де кестелер мен
индекстерді анықтау және жою;
- Мәліметтерді таңдау сұранымы-SELECT сөйлемі;
- Мәліметтерді түрлендіру сөйлемі-мәліметтер қосу, жою және
өзгерту;
- Мәліметтерді басқару сөйлемі-мәліметтерге кіру артықшылығн
беру немесе қайтару, транзакцияларды басқару және т.б.
- Сондай-ақ SQL бұл сөйлемдерде келесі есептерді орындау
мүмкіндігін береді:
- Арифметикалық есептеулер, функционалдық түрлендірулер, және
арифметикалық өрнектер мен текстерді салыстыру
операцияларын орындау;
- Кесте мазмұнын экран дисплейіне немесе баспаға шығарар
кезде жолдар мен бағаналарды реттеу;
- Қолданушыларғы МҚ-да мәліметтердің көлемін өзгертпей
интерпретациялау мүмкіндігін беретін ұсыныстар құру;
- Сұраным бойынша шығарылатын бір немесе бірнеше кестелер
және ұсыныстар мазмұнын басқа кестеде сақтау;
- Мәліметтерді топтау, және осы топтарға арифметикалық орта,
сумма, максимум, минимум операцияларын қолдану;
SQL тілі көптеген МҚБЖ-ң негізі болып табылад, өйткені ол
мәліметтердің физикалық құрылымдануына және дискіге жазылуына сондай-ақ
мәліметтерді дискіден физикалық оқуға жауап береді, және МҚБЖ-ң басқа
компоненттерінен және қолданушы қосымшаларынан SQL-сұранымдарды қабылдау
мүмкіндігін береді.Олай болса, SQL қолданушыларға, программаларға реляциялы
МҚ ақпараттарына кіруді қамтамасыз ететін мықты құрал.
2.1 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 ж қазанда қабылданды.
2.3 SQL көмегімен мәліметтер қорын басқару
Реляциялық МҚ –ол жолдар мен бағандардан тұратын екі өлшемді кестеде
сақталатын байланысқан ақпарат. МҚБЖ терминінде жазу деп аталатын әрбір жол
мәліметтердің қандай да бір ерекшелігіне сәйкес келеді. Өріс деп аталатын
кестенің әрбір бағаны мәліметтердің әрбір типінің мәнінен тұрады. Олай
болса, реляциялық МҚ негізі ақпараты бар екі өлшемді кесте болып табылады.
Бірақ МҚ бір кестеден тұратын реляциялық МҚ сирек кездеседі.
Мәліметтермен күрделі және қуатты операцияларды өрнектеу үшін өзара
байланысқан ақпаратты фрагменттері арасындағы байланысқа байланысты.
Жүйенің максималды иілгіштігін қолдау үшін кестенің жолдары арнайы ретпен
орналаспауы керек. Реляциялық МҚ жүйелерінде ақпаратты реттейтін қуатты
функция бар.
Жолдардан айырмашылығы, кестенің өрістері реттеледі және оларға ат
беріледі. Яғни, кестенің әрбір бағанының кереметаты болуы керек.
Әдетте SQL бірден көп қолдаушылары бар компьютерлік жүйелерде жұмыс
істейді, сәйкесінше оларды өзара ажырату қажеттілігі туады. Әдетте мұнда
жүйеде әрбір қолданушының хұқын тексеру коды болады. Компьютермен сеанстың
басында қолданушы жүйеге өзінің арнайы ID(идентификатор) айтып кіреді.
Кірудің ID-ін пайдаланатын кез-келген адамдар саны, жеке қолданушы болып
табылады.
Көптеген SQL орталарындағы әрекеттер арнайы идентификатор- лармен
сәйкес рұқмат етілген. Кесте немесе басқа объект толық билігі бар
қолданушыға тәуелді. Және де қолданушыда объектілермен әрекеттер жүргізу
артықшылығ бар. Төменде келтірілетін мысалдарда кез-келген қолданушының
әрекеттер жасауға артықшылығы бар деп санаймыз.
Оқу мәліметтер қорының сипатамасы
Осыдан былай мысал ретінде шағын МҚ пайдаланамыз. Онда 4 кесте бар:
STUDENTS кестесі студенттер туралы ақпараттың 5 өрісінен тұрады:
- SNUM-студенттік билет номері;
- SFAM-студент фамилиясы;
- SIMA-студент аты;
- SOTCH-студенттің әкесінің аты;
- STIP-студент алатын стипендия көлемі;
- PREDMET кестесі оқу пәндері туралы ақпараттан тұрады:
- PNUM-пән номері;
- PNAME-пән атауы;
- TNUM-
- HOURS-сағат ... жалғасы
Кіріспе 2
1 DELPHI Ппроцедуралар ұғымы 4
1.1. Процедуралар 7
1.2. Функциялар 8
1.3 Рекурсивтік ішкі бағдарламалар 9
2 Сүзгілеу тәсілдері 11
2.1 SQL даму тарихынан 12
2.3 SQL көмегімен мәліметтер қорын басқару 15
2.4 SQL -командаларының типтері 17
2.5 Сандық типтер 19
3 Дәмхана жұмысын автоматтандыру 27
3.1 Программаны сипаттау 27
3.2 Тағамдар мен қызметкерлер тізімін толтыру 27
3.3 Тапсырыс алу 28
Қорытынды 30
Қолданылған әдебиеттер 31
Қосымша 32
Кіріспе
Жиырма бірінші ғасырдың басталуы жаппай ақпараттық қоғамға көшумен
сипатталады. Оған компьютерлік техника, ақпараттық технология және басқа да
ғылыми-техникалық прогресс әсерін тигізуде. Қазақстан Республикасы ғылыми-
техникалық прогрестің негізгі белгісі болып табылатын қоғамды
ақпараттандырудың жаңа кезеңіне енді. Қоғамды ақпараттандыру – еліміздің
экономикасының, мәдениетінің, ғылымының дамуының негізгі алғышарты.
Менің курстық жұмысымда дәмханадағы әкімшілік (администратор) жұмысын
автоматтандыру мақсаты қойылды. Дәмханадағы әрбір жұмысшының қанша ақша
түсіргендігін реттейтін, әрбір столдың жеке қабылдау сияқты жұмыстарын
автоматтандыру – осы курстық жұмыстың қойылған талаптарының бірі. Ал
теориялық бөлімде процедуралар мен функциялар туралы, мәліметтерді
сұраныстар арқылы сүзгілеу және курстық жұмыстың бағдарламасын сипаттау.
1 DELPHI Ппроцедуралар ұғымы
Бағдарламалау барысында көптеген бір типті есептеулерге бірнеше бір-
біріне ұқсас бағдарлама фрагменттерін қайта-қайта жазуға тура келеді.
Осындайда артық жұмыс жасамай, барлық есептеулерді бір ғана фрагмент ішінде
орындау үшін, көмекші бағдарламалар - процедуралар мен функциялар
қолданылады. Мысалы бағдарлама орындау барысында бірнеше рет ұқсас
есептеулер кездессе, онда есептеу блогын бір-ақ рет көмекші бағдарламаға
жазып қойып, бағдарламаның кез-келген нүктесінен көмекші бағдарламаны
шақырып, осы блок арқылы есептеуді шығаруға болады.
Сонымен көмекші бағдарламалар деп бағдарламаның орындалу барысында
бірнеше рет шақырылып орындалып тұратын операторлар блогынан тұратын
көмекші бөлігін айтады.
Көмекші бағдарламалар стандартты және пайдаланушылар көмекші
бағдарламалар болып екіге бөлінеді. Стандартты функциялар мен процедуралар
Delphi тілінің құрамында тұрақты системалық атпен аталып орындалады. Оларға
арнаулы USES пайдаланушылар кітапханасында орналасқан - Windows, Messages,
SysUtils, Variants, Classes, Graphics, Controls, Forms модульдерінің
барлық функциялары мен процедуралары жатады.
SYSTEM модулінің процедуралары мен функциялары Delphi бағдарламасымен
бірге автоматты түрде іске қосылады, сондықтан оны пайдаланушылар бөлімінде
көрсетпесе де болады.
SYSTEM модулінен өзге модульдердің процедуралары мен функцияларын
қолдану үшін бағдарламаның басында міндетті түрде олардың аттарын USES
пайдаланушылар бөлімінде көрсетіп кету керек, мысалы:
USES unit2;
Стандартты функциялар мен процедуралардың көбісі бұдан бұрынғы
бөлімдерде бағдарлама құруда пайдаланылды, мысалы:
Abs(X); Х-тің абсолютгік шамасын есептеу функциясы
Sln(X); Х-тің синусын есептеу функциясы
Random(X); 0-ден Х-ке дейінгі кездейсоқ сан шығару
Delay(X); бағдарламаныңорындалуынX мс уақытқа тоқтату
Clrscr; экранды тазалау процедурасы
Halt; бағдарламаның орындалуын тоқтату процедурасы
...т.б.
Пайдаланушылар көмекші бағдарламалар деп бағдарламашының өзі құрып,
аты да өзіне ыңғайлы бір идентификатормен белгіленетін процедуралар мен
функцияларды атайды. Олар бағдарламаның VAR бөлімінен кейін PROCEDURE
немесе FUNCTION қызметші сөздерімен басталып құрылады:
Ішкі бағдарлама құрылымы:
1. Көмекші бағдарлама қызметші сөзі көмекші бағдарлама тақырыбы;
2. Көмекші бағдарламада кездесетін идентификаторларды сипаттау бөлімдері;
3. Көмекші бағдарлама денесі.
Көмекші бағдарламалардың жазылу тәртібі де негізгі бағдарлама сияқты
бірнеше бөлімдерден тұруы мүмкін, мысалы:
а) Көмекші бағдарлама аты, параметрлері жазылатын тақырыбы;
ә) Тұрақтылар бөлімі;
б) Типтер бөлімі;
в) Айнымалылар бөлімі;
г) Операторлардан тұратын бағдарлама денесі.
Ішкі бағдарламаның аты идентификатормен белгіленеді. Бағдараламада
бірнеше процедура немесе функция болуы мүмкін. Сол сияқты, көмекші
бағдарламаның да өзінің көмекші бағдарламасы болуы мүмкін. Оларды ішкі
бағдарламалар деп атайды. Негізгі бағдарламада сипатталған
идентификаторларды көмекші бағдарламаның ішінде де сол сипатталған типпен
қолдануға болады. Олармен белгіленген айнымалылар глобальды деп атайды. Ал
көмекші бағдарламада сипаттапған идентификаторды тек өзінің ішкі
бағдарламасында ғана қолдануға болады. Ол айнымалыларды локальды
(жергілікті) деп атайды.
Ішкі бағдарлама өздігінен орындалмайды, оның орындалуы үшін негізгі
бағдарламада көмекші бағдарламаның аты мен параметрлерін жазып шақырады, ол
жерді көмекші бағдарламаны шақыру нүктесі деп атайды.
Ішкі бағдарламалардың орындалу саны шақыру нүктелерінің санына
байланысты болады. Егер негізгі бағдарламада бірде-бір шақыру нүктесі
болмаса, онда көмекші бағдарлама орындалмайды. Бағдарлама орындалу
барысында алдымен негізгі бағдарлама орындалады да, керек кезде көмекші
бағдарлама шақырылады. Көмекші бағдарламаны шақыру нәтижесінде негізгі
бағдарлама уақытша тоқтайды да, басқару көмекші бағдарламаға барады.
Көмекші бағдарлама денесі, негізгі бағдарламадан алған деректерді толық
өңдеп, орындалғаннан кейін, басқаруды шақыру нүктесіне өңделген жаңа
деректермен бірге қайтарып береді де, негізгі бағдарлама орындалуын әрі
қарай жалғастырады.
Негізгі бағдарламадан деректер қабылдау және көмекші бағдарламалардан
өңделіп жаңарған деректерді негізгі бағдарламаға қайтару көмекші
бағдарламалар параметрлері көмегімен атқарылады. Процедура мен
функциялардың нақты және формальды параметрлері болады. Бағдарлама
орындалу барысында есептелетін параметрлер нақты деп, ал көмекші
бағдарламалардың тақырыбында көрсетілетін параметрлер формальды деп
аталады.
Нақты және формальды параметрлердің типі, саны, реттілігі сәйкес болуы
тиіс. Олар бірдей белгіленуі де мүмкін. Нақты параметрлер тұрақтылардан,
айнымалылардан және өрнектерден тұруы мүмкін. Кей жағдайларда көмекші
бағдарламаның формальды параметрлерін көрсетпесе де болады.
1.1. Процедуралар
Процедура деп белгілі бір идентификатормен аталып, сол атпен
бағдарламаның кез-келген жерінен шақырып, белгілі бір есептеулерді
орындауға болатын бағдарламаның тәуелсіз бөлігін айтады. Процедураның
құрылымы бағдарлама құрылымына ұқсас келеді.
Процедуранын кұрылымы:
{тақырыбы:}
PROCEDURE аты(формальды параметрлер:типтері);
Сипаттамалар бөлімдері; (*бұл бөлімдер болмауыда мүмкін*)
BEGIN Операторлар; (*процедура денесі*)
END;
Бағдарламада процедураны пайдалану үшін процедураның атын нақты
параметрлерімен бірге жазып шақырады, ол жерді процедураны шақыру нүктесі
деп атайды. Бағдарлама процедураның шақыруын оқыған кезде процедураның
орындалуы басталады. Мысалы бағдарлама тақырыбы төмендегідей болса:
PROCEDURE SUMMA(N, M,X:INTEGER);
онда процедураны бағдарламаны мынадай жолмен шақыруға болады:
SUMMA(19,A,50);
жақшадағы 19, А, 50 - нақты параметрлер болып табылады. Нәтижесінде
процедурадағы формальды параметрлер мынадай мәндерге ие болады:
N=19, M=A, X=50.
Процедура шақыру процесінде формальды параметрлердің мәндері нақты
параметрлердің мәнін қабылдайды да, процедура денесіндегі есептеулерде сол
жаңа мәндер пайдаланылады.
Процедураның параметрлері мәндік және айнымалы болып екіге бөлінеді.
Мәндік (аргументгік) параметрлер тек қана нақты параметрлердің мәнін өзіне
қабылдайды да, қайтып оларға өзінің мәнін бере алмайды. Ал айнымалы
параметрлер нақты параметрлердің мәнін қабылдап, оларды процедураның
орындалу барысында өзгертіп, нақты параметрлерге жаңа мәндерін қайтып
береді. Процедураның бір орындалу барысында негізгі бағдарламаның бірден
бірнеше идентификаторлары жаңа мән қабылдай алады. Айнымалы параметрлердің
алдына VAR қызметші сөзі қойылып жазылады. Мысалы:
PROCEDURE Misal(A, B:Integer; VAR X, Y:Longint);
VAR Silnteger;
BEGIN
S:=A+5*B; X:=Sqr(S); Y:=Sqr(X);
END;
Бұл процедураны бағдарламалық тексте төмендегідей жазып шақыруға болады:
Misal(10,5,K,І);
Бағдарлама орындалу барысында Misal(l0,5,K,І) шақыру идентификаторын
оқып, басқаруды Misal процедурасына жібереді де, төмендегідей әрекеттер
орындалады:
1. Процедураның А, В, X, Ү формальды параметрлері 10, 5, К, I нақты
параметрлердің мәнін қабылдайды:
А=10, В=5, Х=К, Ү=І;
2. Процедура денесіндегі операторлар орындалады:
3=10+5*5=35, Х=35*35=1225, Ү=1225* 1225=1500625;
3. VAR қызметші сөзінен кейін жазылған формальды X және Ү
параметрлері процедураның орындалу барысында меншіктеген өздерінің жаңа
мәндерін нақты К-мен I параметрлеріне бергеннен кейін, басқару
Misal(10,5,K,l) шақыру идентификаторынан кейін тұрған операторға өтеді;
К=Х=1225, І=Ү=1500625.
4. Әрі қарай бағдарламаның есептеулерінде К және I айнымалылары
жаңа меншіктеген мәндерімен қатысады.
1.2. Функциялар
Функциялардың атқаратын қызметі мен жұмыс принциптері процедураларға
ұқсайды. Функцияның процедуралардан негізінен екі айырмашылықтары бар:
1. Функциялар өрнек операндалары ретінде қолданыла береді;
2. Функция шақыру нүктесіне бір ғана өзінің атына меншіктелген
скалярлық шаманы қайтарады. Процедуралар шақыру нүктесіндегі бірнеше
идентификаторға жаңа мәндер қайтарып бере алса, ал функциялар бір шақыру
нәтижесінде бір ғана идентификаторға жаңа мән бере алады.
Функциянын кұрылымы:
FUNCTION Аты(формальды параметрлер:типтері):типі;
Сипаттамалар бөлімдері; (*бұл бөлімдер болмауыда мүмкін*)
BEGIN Операторлар бөлімі;
аты: =( *функция жаңа мән меншіктейді *) (*функция денесі *)
END;
Функциялар да процедуралар сияқты шақырылады. Негізгі бағдарламаға
жаңа мән беру үшін функция денесінде функцияның идентификаторы кемінде бір
мән меншіктеуі тиіс. Шақыру нүктесіне функцияның соңғы меншіктеген нәтижесі
жаңа мән болып қайтарылады.
1.3 Рекурсивтік ішкі бағдарламалар
Көмекші бағдарламалардың денесіндегі операторлардың орындалу
барысында өзін-өзі шақыру процесі рекурсия деп аталады. Рекурсивті
бағдарламаларда көмекші бағдарламаның орындалуы есептеу параметрінің
белгілі бір мәнінен бастап тізбектей төменгі деңгейлі мәніне қарай қашан
есептің тривиальды нәтижесі алынғанға дейін жүреді. Функцияның әр
рекурсивті орындалуында оның алдыңғы айнымалылары бағдарламалық ағым деп
аталатын жадта сақталады. Рекурсивті функциялар құрғанда бағдарламалық
ағымның шексіз емес екендігін есте ұстаған жөн (егер ағым толып кетсе,
бағдарламаның орындалуы үзіліп кетеді). Рекурсияның мысалы ретінде
төмендегі N санының факториалын табатын функцияны келтіруге болады:
N санынын Факториалын табу үшін рекурсия кұру мысалы:
PROGRAM Recurs;
VAR N:lnteger; F:Longint;
FUNCTION Fact(N:lnteger):Longint;
Begin
lfN0 Then Begin Writeln(N-ді дұрыс енгізіңіз');
Fact:=0 End Else іf N=1 Then
Fact:=1 Else Fact:=N*Fact(N-1);
End;
BEGIN Readln(N);
F:=Fact(N); Writeln('FN=',F);
Readln END.
Бұл бағдарламаның орындалу барысында негізгі бағдарламадан Fact
функциясы шақырылады. Функцияның денесі N санын 0-мен салыстырудан
басталады. Егер сан теріс немесе 0-ге тең болса, онда функция 0-ді
меншіктейді де орындалуын тоқтатады. Егер сан 1 -ге тең болса функцияның
мәні 1 -ді меншіктейді де орындалуын тоқтатады. Егер санның мәні 1-ден
артық болса, онда басқару Fact:=N*Fact(N-1) операторына барады да N-нің
мәні 1-ге дейін жеткенше функцияның орындалуы қайталанады(факториалдың
тривиальді мәні 1-ге тең болғандықтан N=1). Функция рекурсивті процес
тоқтағаннан кейінгі көбейтінді нәтижесін меншіктейді де орындалуын
тоқтатады. Мысалы N=5 болғанда Fact функциясы төмендегідей орындалады:
N=5; 51; Fact=5*Fact(4);
N=4; 41; Fact(4):=4*Fact(3);
N=3; 31; Fact(3):=3*Fact(2);
N=2; 21; Fact(2):=2*Fact(1);
N=1; 1=1; Fact(1):=1;
2 Сүзгілеу тәсілдері
1987 жылы SQL маманданған реляциялық МҚБЖ үшін стандартты тіл болып
барлық кең таралған жүйелерге ене бастады. Ол келесі момнеттерімен
байланысты. Тез әрекеттіліктің өсуі, және энергияны тұтынудың,компьютер
өлшемдері мен бағаларының төмендеуі, тұтыну нарығының, қолданушылар
ортасының және түрлері мен бағаларының кеңеюіне әкеліп соқты. Сондай-ақ,
әртүрлі программалық жабдықтауларға да сұраныс көбейді. Сатып алушы
фирмаларға күресте, программалық жабдықтаушылар нарыққа интеллектуалды, әрі
көлемді программалар кешенін шығара бастады. Олар сатып ала отырып,
көптеген ұжымдар мен жеке қолданушылар ол программаларды өз компьютерлеріне
орната алмадй. Ақпаратпен алмасу және оларды тарату үшін ЭЕМ желілері
құрылды, онда программалар мен мәліметтерді арнайы файлдық сервер лерге
орналастырды.
Файлдық серверлермен жұмыс істейтін МҚБЖ, бір-бірінен алыс ара-
қашықтықта орналасқан әртүрлі ЭЕМ қолданушыларына бір МҚ кіру мүмкіндігін
берді. Мұндай жағдайда ұжымдарды, оқу кешендерін, ақпараттық және басқа
жүйелерді әртүрлі автоматталған басқару жүйелерін өндіру оңайлатылады.
Бірақ бұл кезде қарапайым сұраным құру үшін де файлдық серверден немесе
серверге файлдарды жазу керек болады, ал ол конфликтілік ситуайияларды
туғызуы мүмкін. Мұндай кемшіліктерді бодырмау үшін клиентсервер
технологиясы ұсынылған боатын, бірақ ол үшін сервермен хабарласу тілі қажет-
мұндай тіл ретінде SQL таңдалды.
SQL концепцияларында операциялардың мәліметтердің кесте түрінде
берілуіне бағытталуы, аз сөйлемді жинақы тілді құруға мүмкіндік берді. SQL
сұранымдарды орындау үшін, және де қолданбалы программаларды құру үшін де
пайдаланылуы мүмкін. Онда келесі сөйлемдер бар:
- Мәліметтерді анықтау тілі-МҚ анықтау, және де кестелер мен
индекстерді анықтау және жою;
- Мәліметтерді таңдау сұранымы-SELECT сөйлемі;
- Мәліметтерді түрлендіру сөйлемі-мәліметтер қосу, жою және
өзгерту;
- Мәліметтерді басқару сөйлемі-мәліметтерге кіру артықшылығн
беру немесе қайтару, транзакцияларды басқару және т.б.
- Сондай-ақ SQL бұл сөйлемдерде келесі есептерді орындау
мүмкіндігін береді:
- Арифметикалық есептеулер, функционалдық түрлендірулер, және
арифметикалық өрнектер мен текстерді салыстыру
операцияларын орындау;
- Кесте мазмұнын экран дисплейіне немесе баспаға шығарар
кезде жолдар мен бағаналарды реттеу;
- Қолданушыларғы МҚ-да мәліметтердің көлемін өзгертпей
интерпретациялау мүмкіндігін беретін ұсыныстар құру;
- Сұраным бойынша шығарылатын бір немесе бірнеше кестелер
және ұсыныстар мазмұнын басқа кестеде сақтау;
- Мәліметтерді топтау, және осы топтарға арифметикалық орта,
сумма, максимум, минимум операцияларын қолдану;
SQL тілі көптеген МҚБЖ-ң негізі болып табылад, өйткені ол
мәліметтердің физикалық құрылымдануына және дискіге жазылуына сондай-ақ
мәліметтерді дискіден физикалық оқуға жауап береді, және МҚБЖ-ң басқа
компоненттерінен және қолданушы қосымшаларынан SQL-сұранымдарды қабылдау
мүмкіндігін береді.Олай болса, SQL қолданушыларға, программаларға реляциялы
МҚ ақпараттарына кіруді қамтамасыз ететін мықты құрал.
2.1 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 ж қазанда қабылданды.
2.3 SQL көмегімен мәліметтер қорын басқару
Реляциялық МҚ –ол жолдар мен бағандардан тұратын екі өлшемді кестеде
сақталатын байланысқан ақпарат. МҚБЖ терминінде жазу деп аталатын әрбір жол
мәліметтердің қандай да бір ерекшелігіне сәйкес келеді. Өріс деп аталатын
кестенің әрбір бағаны мәліметтердің әрбір типінің мәнінен тұрады. Олай
болса, реляциялық МҚ негізі ақпараты бар екі өлшемді кесте болып табылады.
Бірақ МҚ бір кестеден тұратын реляциялық МҚ сирек кездеседі.
Мәліметтермен күрделі және қуатты операцияларды өрнектеу үшін өзара
байланысқан ақпаратты фрагменттері арасындағы байланысқа байланысты.
Жүйенің максималды иілгіштігін қолдау үшін кестенің жолдары арнайы ретпен
орналаспауы керек. Реляциялық МҚ жүйелерінде ақпаратты реттейтін қуатты
функция бар.
Жолдардан айырмашылығы, кестенің өрістері реттеледі және оларға ат
беріледі. Яғни, кестенің әрбір бағанының кереметаты болуы керек.
Әдетте SQL бірден көп қолдаушылары бар компьютерлік жүйелерде жұмыс
істейді, сәйкесінше оларды өзара ажырату қажеттілігі туады. Әдетте мұнда
жүйеде әрбір қолданушының хұқын тексеру коды болады. Компьютермен сеанстың
басында қолданушы жүйеге өзінің арнайы ID(идентификатор) айтып кіреді.
Кірудің ID-ін пайдаланатын кез-келген адамдар саны, жеке қолданушы болып
табылады.
Көптеген SQL орталарындағы әрекеттер арнайы идентификатор- лармен
сәйкес рұқмат етілген. Кесте немесе басқа объект толық билігі бар
қолданушыға тәуелді. Және де қолданушыда объектілермен әрекеттер жүргізу
артықшылығ бар. Төменде келтірілетін мысалдарда кез-келген қолданушының
әрекеттер жасауға артықшылығы бар деп санаймыз.
Оқу мәліметтер қорының сипатамасы
Осыдан былай мысал ретінде шағын МҚ пайдаланамыз. Онда 4 кесте бар:
STUDENTS кестесі студенттер туралы ақпараттың 5 өрісінен тұрады:
- SNUM-студенттік билет номері;
- SFAM-студент фамилиясы;
- SIMA-студент аты;
- SOTCH-студенттің әкесінің аты;
- STIP-студент алатын стипендия көлемі;
- PREDMET кестесі оқу пәндері туралы ақпараттан тұрады:
- PNUM-пән номері;
- PNAME-пән атауы;
- TNUM-
- HOURS-сағат ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz