“Персонал” бағдарламасының SQL тіліндегі негіздері



М А З М Ұ Н Ы

1. Кіріспе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
2. Жалпы бөлім. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1. Бағдарлама құруға қажетті Деректер қоймасын басқару
жүйесі (ДҚБЖ) туралы түсінік . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2.2. Деректер қорын нормальдау, модельдеу, жобалау және
деректер қоймасының эффектілігі. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3. Арнайы бөлім. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1. “Персонал” бағдарламасының SQL тіліндегі негіздері. . . . . . . . . . . . 20
3.2. Серверге қосылу. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
3.3. SQL тілінде бағдарлама кестесін құру . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4. Есептің қойылымы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
3.5. Staff.gdb деректер қоймасына қосылу. . . . . . . . . . . . . . . . . . . . . . . . . . . ..38
3.6. Қызметкерлер жайлы жалпы мәліметтерді көрсету. . . . . . . . . . . . . . . . 71
4. Жобаны іске асыру. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . .. .85
5. Қауіпсіздік техникасының шаралары. . . . . . . . . . . . . . . . . .. . . . . . . . . .. .87
5.1. ДЭЕМ және бейнедисплейлік терминалға сұраныс. . . . . . . . . . . . . . . . 89
5.2. Жасөспірімдерге арналған компьютерлік бөлмелердің жабдықтары
және оны ұйымдастыру шаралары. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
5.3. БДТ, ДЭЕМ және дербес компьютермен жұмыс істеу кезінде еңбек
режимі мен демалуды ұйымдастыру шаралары. . . . . . . . . . . . . . . . . . . . .92
6. Экономикалық бөлім. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.1. Экономикалық қызметтің пайдалылығы. . . . . . . . . . . . . . . . . . . . . . . 95
6.2. Бағдарламаны енгізуге дейінгі шығындар есебі. . . . . . . . . . . . . . . . .. . 99
6.3. Экономикалық шығындар есебі. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7. Қорытынды. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8. Қысқартылған сөздер мен терминдер. . . . . . . . . . . . . . . . . . . . . . . . . . 103
9. Қолданылған әдебиеттер. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

М А З М Ұ Н Ы

1. Кіріспе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
2. Жалпы бөлім. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1. Бағдарлама құруға қажетті Деректер қоймасын басқару
жүйесі (ДҚБЖ) туралы түсінік . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2.2. Деректер қорын нормальдау, модельдеу, жобалау және
деректер қоймасының эффектілігі. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3. Арнайы бөлім. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1. "Персонал" бағдарламасының SQL тіліндегі негіздері. . . . . . . . . . . . 20
3.2. Серверге қосылу. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
3.3. SQL тілінде бағдарлама кестесін құру . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4. Есептің қойылымы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
3.5. Staff.gdb деректер қоймасына қосылу. . . . . . . . . . . . . . . . . . . . . . . . . . . ..38
3.6. Қызметкерлер жайлы жалпы мәліметтерді көрсету. . . . . . . . . . . . . . . . 71
4. Жобаны іске асыру. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . .. .85
5. Қауіпсіздік техникасының шаралары. . . . . . . . . . . . . . . . . .. . . . . . . . . .. .87
5.1. ДЭЕМ және бейнедисплейлік терминалға сұраныс. . . . . . . . . . . . . . . . 89
5.2. Жасөспірімдерге арналған компьютерлік бөлмелердің жабдықтары
және оны ұйымдастыру шаралары. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
5.3. БДТ, ДЭЕМ және дербес компьютермен жұмыс істеу кезінде еңбек
режимі мен демалуды ұйымдастыру шаралары. . . . . . . . . . . . . . . . . . . . .92
6. Экономикалық бөлім. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.1. Экономикалық қызметтің пайдалылығы. . . . . . . . . . . . . . . . . . . . . . . 95
6.2. Бағдарламаны енгізуге дейінгі шығындар есебі. . . . . . . . . . . . . . . . .. . 99
6.3. Экономикалық шығындар есебі. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7. Қорытынды. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8. Қысқартылған сөздер мен терминдер. . . . . . . . . . . . . . . . . . . . . . . . . . 103
9. Қолданылған әдебиеттер. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

1. К І Р І С П Е

Есептеу қажеттілігі адамзатта әлдеқашан пайда болды. Ал, өркениет дамыған сайын есептеу қажеттілігі арта түсіп, есептеу механикаландыру жолдарын іздеуге мәжбүр етті. Сол себепті есептеуіш машиналарын ойлап тапты.
Осындай алғашқы машиналардың бірін 1642 жылы француз ғалымы Блез Паскаль жасаған болатын. Жалпы компьютер дегеніміз - бағдарлама басқарумен нақты операциялар тізбегін орындайтын құрылғы. "Электрондық - есептеуіш машина" (ЭЕМ) ұғымы есеп үшін ғана керек дегенді білдірсе, ал "компьютер" ұғымы одан тереңірек мағына береді. Паскаль машинасы жаңа принципте жасалған алғашқылардың бірі болды. Паскаль еңбектері есептеуіш техниканың дамуына ықпалын жасап, осы машина негізінде көптеген есептейтін машиналар жасап шығарылды.
1964 жылы Лейбниц әлемдегі алғашқы арифметикалық әрекеттердің төртеуін орындауға арналған арифмометр жасады.
1975 жылдың аяғында Пол Аллен мен Билл Гейтс осы компьютерге Бейсик тілінің интерпретаторын ойлап тапты. Қазіргі уақытта IBM РС тектес компьютерлердің MS DOS Windows 95; 98; 2000; ХР операциялық жүйелерін шығарған Microsoft фирмасы ең үлкен фирма болып, ал оның негізін салушы Билл Гейтс дүние жүзіндегі ең бай адам болып есептеледі.
Компьютер бағдарламаларын жасауда әйгілі Borland компаниясы программалаушыларға көптеген керемет бағдарлама жасау құралдарын ұсынды. Ол қарапайым Паскаль тілімен басталып, кейін Borland Pascal 7, Object Pascal түрлеріне айналды. Солардың негізінде объектіге бағытталған бағдарламалау амалдары мен Windows операциялық жүйе қолданатын көзбен шолу тәсілін қосып бұл компания жаңа бағдарламалық құралды әлемге паш етті. Оның атын грек дельфи абызы тұрған Delphi атынмен атағаны бұл ұйымның оңалып, жаңғырғанын білдірген болар. Delphi бағдарламалау ортасында тұтынушының қарапайым командаларын іске асырудан бастап, сурет, дыбыс құралдарын қолдану арқылы суретті дыбысты қозғалатын ойыншықтарды экранға шығару бағдарламаларын жасау көзделеді. Көптеген жұмыс орындарында туатын көп сауалдарды шешуге мүмкіндік беретін бағдарламалар жасап және осы бағдарламалау ортасында деректер қоймасында (Database) сақталған ақпараттарға кіруге болады.
Деректер базасы - бұл әртүрлі типтегі деректердің құрылымы болып табылады. Төменде жазылатын дипломдық жобада, дәл осы Delphi бағдарламалау ортасында "Персонал" бағдарламасының негізгі формасын құрып, ондағы қызметкерлердің аты- жөнін, тізімін, туған жылын, қызмет түрін, пошталық индексін, мекен жайын т.б деректерін, деректер қоймасының SQL - серверінде жазып, Delphi - мен Деректер базасын бір- бірімен байланыстыра отырып бағдарламаны шығарамыз.
Бұл бағдарламада қызметкерлердің деректерін жіктеуіміз деректер қоймасы болып табылады. Бұл деректерді белгілі параметрлері, қасиеттері, яғни бір- біріне қатысты белгілері бойынша топтастыру арқылы жүзеге асыруға болады.
Компьютерлер басында есеп шығару үшін ғана жасалған болса, кейіннен осындай бағдарламалардың және компьютерлердің өздерінің дамуына қарай басқа да түрлі ақпараттарды өңдей алатын болды. Қазіргі компьютерлер тек қана сандар мен мәтінді ғана емес, алуан түрлі графикалық ақпараттарды (суреттерді, схемаларды), бейнефильмдерді, музыканы да жазып өңдесе, сонымен қатар Delphi - мен Деректер базасын және т.б. бағдарламаларды бір - бірімен байланыстыра отырып завод, фабрикалардағы алуан түрлі станоктарды, ұшақтармен жолсеріктерін және әртүрлі фирма жұмыстарын, банк жұмыстарын, ондағы қызметкерлер туралы деректерді, сол кәсіпорынның атқаратын қызметтерін, көптеген оқу орындарындағы мамандықтар түрлерін, онда оқитын студенттердің сандарын шығарып беретін және оларды басқаратын, қысқаша айтқанда кез- келген қызмет орынның жалпы деректері туралы мәліметтер беретін бағдарламаларды құрып, жұмыстарды оңайлатуға болады. Қазіргі кезде міне осы компьютердің арқасында космосқа да жыл сайын корабльдер ұшырылып жатыр. Соның барлығы да бағдарламамен қамтамассыз етілген.
Мен дипломдық жоба алдындағы іс-тәжірибені Талғар агробизнес және менеджмент колледжінде өткіздім. Сол уақыт аралығында дипломдық жобамның тақырыбын таңдағанда, осы колледж қызметкерлерінің толық деректерін ендіруге мүмкіндік беретін "Персонал" бағдарламасын құруды ұйғардым. Міне, осы тұрғыда жасалған "Персонал" атты дипломдық жобаның мақсатын айта кететін болсам, осы колледжде бұрыннан жұмыс істейтін қызметкерлердің, жұмысқа жаңадан орналасқан қызметкерлердің және жұмыстан шығарылған қызметкерлердің деректерін ендіріп үнемі Кадр бөлімінде пайдалануға арналып құрылған. Ал енді, бағдарламаға толығымен тоқталатын болсам, бұл бағдарламада бір кәсіпорында жұмыс істейтін жалпы қызметкерлердің тізімі, сол кәсіпорынның басшысы туралы, жеке - жеке қызметкерлер туралы және қызметтен босатылғандар туралы толық мәліметтер беріледі.
Екіншіден, қызметкерлердің қандай қызметте, қандай мамандықпен жұмыс істейтіндігі туралы толық мәліметтер беретін Анықтамалар бөлімінен, ұйым яғни кәсіпорын туралы мәліметтер беретін Қосымша парметрлері бөлімінен және кәсіпорында жұмыс істейтін барлық қызметкерлер туралы толық ақпарат беретін Қызметкерлер бөлімінен тұрады. Міне, осындай әдіспен орындалған бағдарламаны "Электрондық үкімет" бағдарламасы құрамына да кіргізе аламыз. Өйткені бұл бағдарламаны кейіннен кез - келген кәсіпорын, оқу орындары, кішігірім фирмалар өздерінің қызметкерлері туралы, жалпы ұйым туралы толық деректерді осындай бағдарламаға ендіріп, кадр бөлімінде қолдануларына да болады.
"Электрондық үкімет" - интернетке қосылған көптеген министрліктердің басын біріктіріп, 377 ақпараттық қызмет түрін көрсетеді. Мемлекеттік органдардың ведмствоаралық бейнеконференциялар өткізуі үшін де осы қызмет түрі пайдаланылады.
4 кезеңге жоспарланған "электрондық үкіметті" жүзеге асыру үшін Корея, Сингапур, Италия, Германия және өзге де елдердің тәжірибелері алынған. "Ұлттық ақпараттық технологиялар" АҚ жанынан құрамына "электрондық үкімет" кіретін Орталық құрылып, оған Эстония, АҚШ, Үндістан және Кореяның халықаралық сарапшылары жұмылдырып отыр. Аталған міндеттерді жүзеге асыру үшін үкімет өз тарапынан "Ақпараттандыру туралы" және "Кейбір заңнамалық актілерге ақпараттандыру бойынша толықтырулар енгізу туралы" заң жобаларына басымдық беріп, Парламент қарауына енгізуді жоспарланған.
"Электрондық үкімет" құру жоспары бойынша 2008 жылы Қазақстандықтардың 20 пайызы компьютерді меңгеріп шығуы тиіс.
Енді осы "Электронды үкімет" қажеттіліктеріне және интернет жүйесін арзандатуға пайдаланылатын өзіміздің алғашқы жер серігіміз "KazSat - 2" кешені Ақкөлде осы маусымның 18- інде ұшырылды. Бұл кешеннің ұшырылуы біздің елімізді өздерінің дербес жер серіктері бар 25 елдің қатарына енгізеді екен. Сонымен қатар күрделі, пайдалы бағдарламаларды құрастырушыларға, яғни біздерге де өте тиімді.

А Р Н А Й Ы Б Ө Л І М
3.1. "П е р с о н а л"
бағдарламасының SQL тіліндегі негіздері

SQL (Structured Query Language -Сұраныстардың құрылымдық тілі) тілі бұл декларациялық тіл. Декларациялық тіл оператор көмегімен деректерді сипаттауға мүмкіндік береді. Ол операторлар төменгі жүйедегі деңгейлерге алгебралық операциялардың тізбесін трансляциялайды.
SQL - деректер базасынан деректерді алумен қатар деректер базасын құрып оның қауіпсіздігін қамтамассыз етуге де мүмкіндік береді. Локальдік деректер қоймасымен жұмыс істеген кезде SQL командаларының орындалуы үшін, Delphi - мен бірге орналасқан SQL Explorer немесе Database Desktop бағдарламаларын қолдануға болады.
IBConsole. InterBase 6.5 деректер қоймасымен жұмыс істеуге арналған (SQL-сұраныс редакторын қосқанда) барлық құрылғылар IBConsole -да орналасқан. Жоғарыдағы мәліметтермен танысқан соң, Delphi ортасында жасалатын Персонал бағдарламасына қажетті деректерді, деректер базасының SQL тілінде кестелер жасап толтыру арқылы бір - бірімен байланыстыруымыз керек. Ол үшін мына әрекеттерді орындаймыз. Енді жұмысқа кіріспес бұрын InterBase серверінің жүктелгеніне көз жеткізіңіз. Ол үшін, іс -әрекеттер панеліндегі Пуск негізгі меню көмегімен IBConsole бағдарламасын жүктеңіз. Нәтижесінде пайда болған терезе 1- суреттегідей көріністе болады.

1- Сурет. IBConsole
3.2. Серверге қосылу

1- суретте IBConsole -дың сол жақ терезесінде InterBase - ге тіркелген серверлердің тізімдері орналасқан. Қазіргі кезде бұл жерде бір ғана сервер тіркелге , ол локальдік сервер. Енді бұл серверге қалай қосылу керек екендігі туралы қысқаша түсініктеме бере кететін болсақ:
1. Server Register командаларын орындаңыз немесе түпкі бұтақ тәріздес орналасқан InterВase Servers - ке тышқан тетігін 2 рет басыңыз. Нәтижесінде диалогтық терезеде серверді тіркеу терезесі пайда болады.
(2-сурет).

1- сурет. Register Server and Connect диалогтық терезесі

Бұл терезеде қай серверге қосылу керек екендігін көрсетуіміз керек.
1. Біз Локальдік серверге қосылатын болғандықтан, Local Server қосқышына тышқан тетігін басамыз.
Login Information тарауында қолданушының аты мен парольі көрсету керек. InterВase - да стандартты қолданушының аты ретінде SYSDBA, ал пароль ретінде - masterkey жазылады. Бірақ қалауыңызша өзгертсеңіз де болады.
2. User Name өрісіне SYSDBA, ал Password өрісіне masterkey сөзін жазыңыз. Пароль жұлдызша түрде жазылады.
3. Пайда болған Local Servers - ке тышқан тетігін 2 рет басып, ішіндегі тізімдерін көруге болады. Ол 3- суретте көрсетілген.

1- сурет. Локальдік серверге қосылу орындалды.

3- суретте көрсетілгендей, локальдік серверге бірнеше элемент байланысқан. Қазіргі кезде бізге солардың ішінде екеуі ғана: DataBases және Users қызығушылық тудырады. Егер Users -ке тышқан тетігін басатын болсақ, онда терезенің оң жақ бөлігінде серверде тіркелген барлық қолданушылардың тізімдері шығады. Қолданушылар аты мен парольді өзгерту үшін Server - User Security командаларын орындасақ жеткілікті.

Серверде жаңа деректер қоймасын тіркеу. DataBases элементі көмегімен InterВase деректер қоймасында бар деректерді серверге тіркеуге немесе жаңа деректерді серверге тіркеуге болады. Деректер қорын құруды кейінірек қарастырамыз. Ал қазір деректер қорын тіркейік:
1. DataBases Register командаларын орындап, DataBase өрісінің оң жағында орналасқан 3 нүктеге тышқан тетігін басыңыз.
2. InterBase деректер қоймасының файлдары .gdb. кеңейтілуінде болады.

Деректер қоймасын құру. Деректер қоймасын SQL тілінің негізгі командалары көмегімен және IBConsole құрылымдары көмегімен де құруға болады. Біз қазір IBConsole құрылымдары көмегімен құрайық. Ол үшін:
1. DataBases элементіне тышқанның оң жақ батырмасын басып, пайда болған жанама менюден Create Database - ді таңдаңыз. Нәтижесінде экранда деректер қоймасын құруға болатын диалогтық терезе пайда болады.(4- сурет).

4-сурет. Create Database диалогтық терезесі

2. Бұл терезеде деректер қоймасының файлының атын және орналастырылуын, өлшем бірлігін көрсетуге болады. Беттің өлшемін Page Size өрісінде 4096 байт (4 Кбайт) түрінде көрсетіңіз
3. Default Character Set өрісінде деректер қоймасының жолдық өрістерінің белгілерін кодтау көрсетіледі. Бұл өрісте None мәнін қалдырыңыз.
4. SQL Dialect өрісінде көрсетілген мән екі тырнақшаны, үлкен көлемдегі сандарды және бірнеше деректердің типтерін анықтайды. Көптеген жағдайлар үшін міндетті түрде 3 диалектісін таңдаңыз.
5. Ал Alias өрісінде серверде тіркелген деректер қоймасының атын көрсетіңіз. Мысалы STAFF.GDB.
6. Деректер қоймасының барлық параметрлерін көрсеткеннен кейін, ОК батырмасына басыңыз. Нәтижесінде File өрісінде аты мен өлшем бірлігі көрсетілген деректер қоймасы құрылады.
"Персонал" бағдарламасын құру үшін біз ең бірінші деректер қоймасының файлдарын, Delphi-дің файлдық проектісін сақтайтын жеке каталог құруымыз керек. Ол үшін d:\programs\staff\base деп каталог құрып соның ішіне "Персонал" бағдарламасының деректер қоймасын STAFF.GDB деп сақтаймыз.
Деректер қоймасын және оның элементтерін құру үшін IBConsole бағдарламасындағы Tools Interactive SQL командасын орындаңыз. Сонда 5- суреттегідей терезе пайда болады:

5-сурет. Interactive SQL құрылымы

Енді осы терезеде SQL - сұранысын жасау үшін төмендегі әрекеттерді орындаңыз:
1. Interactive SQL терезесінің жоғарғы өрісіне SQL- сұранысының мәтінін мына түрде ендіріңіз:
SET SQL DIALECT 3

2. Staff.gdb деректер қоймасын құрайық. SQL - да деректер қоймасын құру үшін CREATE DATABASE командасы қолданылады. Interactive SQL терезесінде келесі SQL операторын жазыңыз:
CREATE DATABASE "d:\programs\staff\base\staff.gdb"
USER "SYSDBA" PASSWORD "masterkey"
PAGE_SIZE=4096
LENGTH=10000 PAGES

Нәтижесінде d:\programs\staff\base каталогында Staff.gdb деректер қоймасының файлы құрылады.

3.3. SQL тілінде бағдарлама кестесін құру

Кесте құру үшін SQL операторы CREATE TABLE қолданамыз. "Персонал" бағдарламасы үшін 6 кесте құрыңыз. Олар:
* STAFF - Деректерімен қызметкерлердің тізімдері
* REGIONS - Тұрғылықты жері көрсетілген қызметкерлердің тізімдері
* DEPS - Кәсіпорын бөлімінің тізімі
* POSS - Қызметтер тізімі
* JOBS - Қызметкерлердің қызмет жағдайы туралы мәліметтер беретін кесте
* FAMILY - Қызметкердің отбасы жайлы мәліметтер сақтайтын кесте

1. Енді, кесте құруға кірісейік. Interactive SQL терезесінде STAFF кестесі үшін келесі SQL операторды жазыңыз:

CREATE TABLE STAFF
( ID integer NOT NULL PRIMARY KEY,
LastName varchar(30) NOT NULL,
FirstName varchar(30) NOT NULL,
FatherName varchar(30),
Zip integer,
Street varchar(30),
House varchar(10),
Tel varchar(20),
TaxCode numeric(12,0) DEFAULT 0 NOT NULL,
TabNum varchar(10),
BirthDate date NOT NULL,
DepID smallint NOT NULL,
PosID smallint NOT NULL,
BornPlace varchar(50),
Salary numeric(15,2) DEFAULT 200.0 NOT NULL,
PasspNum varchar(20),
PasspDate date,
Photo blob)

Кестені жазғаннан кейін Query Execute командасын орындаңыз немесе найзағай бейнеленген батырмаға басыңыз. Нәтижесінде STAFF кестесі пайда болады.
* Бұл кестедегі STAFF. ID- алғашқы кітті құру үшін қолданылатын жазба идентификаторы;
* LastName, FirstName, FatherName - Қызметкердің тегі, аты және әкесінің аты;
* Zip, Street, House, Tel - қызметкердің пошталық индексі, қала, көше, үйдің немесе пәтерінің номері және телефон номері;
* TaxCode - Салық төлеушінің идентификациялық номері (РНН);
* TabNum - Кәсіпорын реестрі бойынша қызметкердің табельдік номері;
* BirthDate - Туған жылы, айы, күні;
* DepID, PosID - Бөлім және қызмет идентификаторы;
* BornPlace - Туған жері;
* Salary - Еңбекақысы;
* PasspNum, PasspDate - Төлқұжат номері және берілген күні;
* Photo - Қызметкердің суреті;

3. Interactive SQL терезесінде REGIONS кестесі үшін келесі SQL операторды жазыңыз:
CREATE TABLE REGIONS
( Zip integer NOT NULL PRIMARY KEY,
Area varchar(30),
Region varchar(30),
City varchar(20) NOT NULL)

Бұл кестенің өрісінде пошталық индекс, аймақ аты және тұрғылықты жері көрсетілген.
4. DEPS кестесі үшін келесі SQL операторды жазыңыз:
CREATE TABLE DEPS
( DeptID integer NOT NULL PRIMARY KEY,
DeptFullName varchar(100) NOT NULL,
DeptShortName varchar(10) NOT NULL,
ParentDeptID integer DEFAULT 0 NOT NULL,
Parents varchar(100))

Бұл кестеде бөлімнің толық аты және қысқартылған аты көрсетіледі.

5. POSS кестесі үшін келесі SQL операторды жазыңыз:
CREATE TABLE POSS
( PosID integer NOT NULL PRIMARY KEY,
PosFullName varchar (100) NOT NULL,
PosShortName varchar (20) NOT NULL,
PosLevel smallint DEFAULT 1 NOT NULL)

Бұл кестеде идентификатор, қызметтің толық аты және қысқартылған аты, қызмет жағдайы туралы мәлімет көрсетіледі.

6. JOBS кестесі үшін келесі SQL операторды жазыңыз:
CREATE TABLE JOBS
( EmpID integer NOT NULL,
StartDate date NOT NULL,
StopDate date,
Organization varchar(100) NOT NULL,
Dep varchar(100),
Pos varchar(100) NOT NULL,
StopCauses varchar(100),
CurOrg char(1),
InOrderNum varchar(10),
OutOrderNum varchar(10))

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

7. FAMILY кестесі үшін келесі SQL операторды жазыңыз:
CREATE TABLE FAMILY
( EmpID integer NOT NULL,
kin varchar(5) NOT NULL,
BirthDate date,
KinName varchar(50) NOT NULL)

Ал, бұл кестенің құрамында қызметкер идентификаторы, отбасы(әйелі, күйеуі, ұлы, қызыжәне т.б.), туысының аты және туған жылы болады.
Ал егер құрылған кестеден қателесіп, оны өшіріп тастау керек болса, онда келесі оператор көмегімен өшіруге болады:
DROP TABLE кесте_аты

Индекстер
1. STAFF кестесі үшін тегі, аты, әкесінің аты өрістері бойынша сорттайтын индекстер құрайық:
CREATE INDEX STAFF_INDEX1 ON STAFF (LastName, FirstName,FatherName)

2. Осы кестеге тағы да баған бойынша салық төлеушінің коды және баған бойынша табельдік номері бар екі индекс құрыңыз:
CREATE UNIQUE INDEX STAFF_INDEX2 ON STAFF (TaxCode)
CREATE UNIQUE INDEX STAFF_INDEX3 ON STAFF (TabNum)
UNIQUE кілттік сөзі берілген индекстер қайталануға мүмкіндік бермейтіндігін білдіреді.

3. Енді JOBS кестесіне индекс құрыңыз:
CREATE INDEX JOBS_INDEX1 ON JOBS (EmpID, StartDate)
Бұл индекс жұмыс барысын айы, күні, жылы бойынша сорттау үшін қолданылады.

Деректер ендіру
Кестеге деректер ендіру үшін INSERT операторы қолданылады. Мысалы, Staff.gdb деректер қоймасындағы REGIONS кестесіне біраз өрістер ендірейік:
INSERT INTO REGIONS
VALUES(8320, 'Алматы','','Талгар');
INSERT INTO REGIONS
VALUES(8324, 'Алматы','Талгар','Рыскулова');

Нәтижесінде REGIONS кестесіне Алматы облысы Талғар ауданы Рысқұлова ауылы қосылады. Енді INSERT операторының деректерді таңдап орналастыру қасиетін қарастырайық. STAFF кестесіне бір өріс ендірейік. (дата форматына назар аударыңыз ааккжж):

INSERT INTO STAFF(ID, LastName, FirstName, FatherName,
Zip, BirthDate, DepID,PosID,TabNum)
VALUES(0, `Карынбаев','Койшыбай','Балхышович' ,8303,'26081950',0,0,'0')

Нәтижесінде STAFF кестесіне 0 идентификаторы бар жазба қосылады. Бұл жазбаларды SQL -да жазғаннан кейін орындауға жіберу үшін, деректер қоймасына өзгерістер ендіретін транзакция (Transaction) деп аталатын менюдің ішіндегі Commit командасын таңдаңыз. Ал Rollback командасы керісінше ендірілген өзгерістерді қайтадан бұрынғы қалпына келтіруге көмектеседі. Егер ендірген өзгерістер деректер қоймасында сақталып қалса, онда оны бұрынғы қалпына қайта келтіре алмаймыз.

Деректерді тексеру
Кестеге ендірілген деректерді көру үшін, SQL -да SELECT командасы қолданылады. Қарапайым формада бұл команданы мына түрде көрсетуге болады:
SELECT * FROM REGIONS

1. Осы команданы орындауға жіберіңіз, сонда терезенің ең төменгі бөлігінде REGIONS кестесінен таңдап алынған өрістер пайда болады. Мұндағы * белгісі REGIONS кестесі бағандарының барлық деректерін шығаруға мүмкіндік береді.
1. Осы командаға кішкене өзегрістер ендіріңіз:
SELECT Zip, City FROM REGIONS
Нәтижесінде Zip және City бағандарындағы деректер ғана таңдап алынады.

2. Енді келесі команданы орындаңыз:
SELECT Area FROM REGIONS
Нәтижесінде құрамында Алматинская мәні бар екі өріс таңдалып алынады.

3. Алдыңғы команданы сәл өзгертіңіз:
SELECT DISTINCT Area FROM REGIONS

Кестелерді байланыстыру
Кестелерді байланыстыру операциясы екі кезеңмен орындалады: бірінші SELECT операторындағы FROM кілттік сөзімен байланысатын кестелер бөлініп алынады, содан кейін WHERE кілттік сөзі көмегімен керекті өрістер бойынша кестелер байланысады. Келесі мысалды қарастырайық:
SELECT STAFF. LastName, STAFF.FirstName, STAFF.FatherName,REGIONS.City
FROM STAFF, REGIONS
WHERE STAFF.Zip = REGIONS.ZIP
Бұл операторды орындау нәтижесінде Қарынбаев, Қойшыбай, Балхышұлы, Рыскулова деген төрт өрістен тұратын жол пайда болады. Бұл жерде ZIP бағаны бойынша REGIONS кестесімен STAFF кестесі байланысады. Деректер қоймасында сақталған кестелерге өзгерістер енгізу үшін SQL -дағы UPDATE командасы, ал кестедегі жолдарды өшіріп тастау үшін DELETE командасы және кестенің өзін өшіру операторы DROP TABLE кесте_аты қолданылады. InterBase деректер қоймасына қосылу үшін CONNECT командасы қолданылады. Мысалы:
CONNECT "d:\programs\staff\base\staff.gdb"
USER "SYSDBA" PASSWORD "masterkey"
Ал деректер қоймасынан шығу үшін DISCONNECT ALL командасын қолдамыз.
Генераторлар (generator) - GEN_ID() функциясы көмегімен автоматты түрде бағанға қоюға мүмкіндік беретін өспелі сан болып табылады. Генераторлар көп жағдайда бірінші кілт құрамына кіретін нақты мәндерді формалау үшін қолданылады. InterBase деректер қоймасы құрамында көптеген генераторлар орналастыруға болады және олар кез- келген транзакцияда қолданылып жаңартыла алады.
Staff.gdb деректер қоймасында STAFF, DEPS, және POSS кестелерінің бірінші жолдарына (идентификатор жолдарына) мәндерді ендіру үшін қолданылатын үш генератор құрайық. Ол үшін келесі SQL команданы орындаңыз:
CREATE GENERATOR STAFF_ID_GEN;
CREATE GENERATOR STAFF_ID_GEN;
CREATE GENERATOR STAFF_ID_GEN;
Нәтижесінде деректер қоймасында үш генератор құрылады. Оған көз жеткізу үшін IBConsole программасындағы негізгі терезеге барып, бұтақ тәріздес элементтерден InterBase Servers Local Server Databases
STAFF.GDB Generators командаларын орындаңыз. Сонда 6- суреттегідей терезе пайда болады.

6-сурет. Staff.gdb деректер қоймасында құрылған үш генератор

Генераторлар құрғаннан кейін ағымдағы кестеге жаңа жолдар қосу кезінде, олардың мәндерін қандай да бір әрекетпен үлкейту керек. Сол үшін біз триггерді қолданамыз.
Триггер (trigger) - бұл нақты кестеде анықталған операцияда орындалатын, SQL тіліндегі бағдаралама. Staff.gdb деректер қоймасына бірнеше триггер құрайық.

1. STAFF кестесіндегі жазбалар сияқты FAMILY және JOBS кестелеріндегі барлық жазбалрады өшіретін триггер құрайық:

SET TERM ^ ;
CREATE TRIGGER STAFFDelete FOR STAFF
BEFORE DELETE
AS BEGIN
DELETE FROM FAMILY
WHERE EmpID = OLD.ID;
DELETE FROM JOBS
WHERE EmpID = OLD.ID;
END

Мұндағы кілттік сөз BEFORE триггердің INSERT, UPDATE және DELETE операцияларының алдында шақырылатынын білдіреді. Бірнеше операциялардан кейін орындалатын триггерді құру үшін BEFORE сөзінің орнына AFTER сөзін қолданамыз.
2. Енді STAFF, DEPS және POSS кестелері үшін генераторға сәйкес ағымдағы мәнді үлкейту үшін GEN_ID функциясын шақыратын үші триггер құрайық:
SET TERM ^ ;
CREATE TRIGGER STAFFInsert FOR STAFF
BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID = GEN_ID(STAFF_ID_GEN, 1);
END ^

CREATE TRIGGER DEPSInsert FOR DEPS
BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID = DeptID = GEN_ID(DEPS_ID_GEN, 1);
END ^

CREATE TRIGGER POSSInsert FOR POSS
BEFORE INSERT POSITION 0
AS BEGIN
NEW.ID = PosID = GEN_ID(POSS_ID_GEN, 1);
END ^
POSITION кілттік сөзі бір операциямен байланысқан бірнеше триггерлердің орындалу тәртібін анықтау үшін қолданылады. Қазіргі жағдайда POSITION 0 INSERT операциясымен байланысқан барлық триггерлердің арасында бірінші орындалатын триггер болып саналады.
Индекстер. InterBase - да индекстерді құру үшін CREATE INDEX командасын қолданамыз.

Таңдау процедурасы
Staff.gdb деректер қоймасында бөлімге бағынатындар тізімдерін реттестіретін процедураны құрайық. Қазіргі жағдайда кәсіпорын құрамында бөлімінің иерархиялық құрылымы қарастырылады. DEPS кестесіндегі ParentDeptID бағанында бөлімнің туыстық идентификаторы көрсетіледі. Егер туыстық бөлім болмаса , онда ParentDeptID мәні 0 болады.
SET TERM ^ ;
CREATE PROCEDURE ChildDeptsList (pDeptID integer)
RETURNS(rDeptFullName varchar(100))
AS BEGIN
FOR SELECT DeptFullName FROM DEPS
WHERE ParentDeptID = :pDeptID
INTO :rDeptFullName
DO SUSPEND;
END

Бұл процедураға туыстық бөлім идентификаторына сәйкес, pDeptID параметрі, ал нәтижесі ретінде бөлімге бағынатын қызметкерлердің тізімі беріледі. Таңдау процедурасында алынған деректер RETURNS кілттік сөзі көмегімен анықталады. Процедураның атынан кейін есептелетін параметрлер ендіру(input), ал RETURNS кілттік сөзінен кейін есептелгендер шығару(output) деп аталады. Енді қызметкер жайлы мәліметттерді өшіру процедурасын құрайық:

SET TERM ^ ;
CREATE PROCEDURE DeleteEmp (pEmpID integer)
AS BEGIN
DELETE FROM STAFF
WHERE ID =:pEmpID;
END

Шығару (Exception)-бұл қолданушылар арқылы анықталған қателер туралы хабарлама механизмі болып табылады. Бұл механизм қоймада сақталған процедуралар мен триггерлердің көмегімен жүзеге асады. Interbase - да жаңа шығаруды анықтау үшін CREATE EXCEPTION, ал өшіру үшін DROP EXCEPTION командасы қолданылады.
STAFF кестесінде кілттік мәндері қолданылатын, DEPS, POSS, REGIONS кестелеріндегі жолдарды біреу өшіргісі келгенде, дәл сол уақытта пайдаланылатын үш шығаруды құрайық. Ол үшін IBConsole бағдарламасындағы негізгі терезеден бұтақ тәріздес құрылымның STAFF.GDB EXCEPTIONS элементтерін таңдап, менюлер қатарындағы SQL белгішесіне тышқан тетігінің сол жақ батырмасын шертіп, пайда болған терезеде төмендегі операторларды жазыңыз:
CREATE EXCEPTION Dept_Is_Busy `Бұл бөлімге қызметкерлер
кестесінде тапсырыс бар. Өшіру мүмкін емес.';
CREATE EXCEPTION Pos_Is_Busy `Бұл қызметке қызметкерлер
кестесінде тапсырыс бар. Өшіру мүмкін емес.';
CREATE EXCEPTION Zip_Is_Busy `Бұл регионға қызметкерлер
кестесінде тапсырыс бар. Өшіру мүмкін емес.'
CREATE EXCEPTION Dept_Has_Children `Бұл бөлім құрамында
қызметкерлері бар бағыныңқы бөлім.'
Нәтижесінде Staff.gdb деректер қоймасында 4 шығарудың анықталғандығы көрсетіледі. (7-сурет).

7-сурет. Staff.gdb деректер қоймасында анықталған 4 шығару

Енді осы шығаруды шақыруға арналған триггерді құруымыз керек. Триггер - бұл негізгі сақталған процедура.
SET TERM ^ ;
CREATE TRIGGER DEPSDelete FOR DEPS
BEFORE DELETE
AS
DECLARE VARIABLE CountOfRefs integer;
BEGIN
SELECT COUNT(ID) FROM STAFF
WHERE DepID =OLD.DeptID
INTO : CountOfRefs;
IF (:CountOfRefs 0) THEN
EXCEPTION Dept_Is_Busy;
SELECT COUNT(ID) FROM STAFF
WHERE DepIDIN (SELECT DeptID FROM DEPS
WHERE ParentDeptID = OLD.DeptID)
ІNTO : CountOfRefs;
IF (:CountOfRefs 0) THEN

EXCEPTION Dept_Has_Children;
END^

CREATE TRIGGER POSSDelete FOR POSS
BEFORE DELETE
AS
DECLARE VARIABLE CountOfRefs integer;
BEGIN
SELECT COUNT(ID) FROM STAFF
WHERE PosID =OLD.PosID
INTO : CountOfRefs;
IF (:CountOfRefs 0) THEN
EXCEPTION Pos_Is_Busy;
END^

CREATE TRIGGER REGIONDelete FOR REGIONS
BEFORE DELETE
AS
DECLARE VARIABLE CountOfRefs integer;
BEGIN
SELECT COUNT(ID) FROM STAFF
WHERE Zip =OLD.Zip
INTO : CountOfRefs;
IF (:CountOfRefs 0) THEN
EXCEPTION Zip_Is_Busy;
END

Енді IBConsole бағдарламасындағы негізгі терезедегі көрініс(view). Мұнда ешқандай деректер сақталмайды. Бұл - кішкене ғана SQL бағдарлама болып табылады. Көрініс CREATE VIEW командасы көмегімен құрылады. Соған сәйкес біз қызметкерлер жайлы барлық мәліметтерді таңдайтын FullList көрінісін құрайық:

CREATE VIEW FullList AS
SELECT staff.ID, staff.LastName, staff.FirstName, staff.FatherName,
staff.Zip, regions.Area, regions.Region, regions.City,
staff.Street, staff.House, staff.Tel, staff.TaxCode,
staff.TabNum, staff.BirthDate, staff.DepID, deps.DeptShortName,
deps.ParentDeptID, deps.Parents, staff.PosID,
poss.PosShortName, poss.PosLevel, staff.BornPlace, staff.Salary,
staff.PasspNum, staff.PasspDate, staff.Photo
FROM staff INNER JOIN regions ON staff.Zip = regions.zip
INNER JOIN deps ON staff.DepID = deps.DeptID
INNER JOIN possON staff.PosID = poss.PosID
Бұл көрініс мәліметтерді тек STAFF кестесінен ғана емес, сонымен қатар REGIONS, DEPS және POSS кестелеріндегі әрбір қызметкердің деректері бойынша да таңдайды.

3.4. Есептің қойылымы

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

1. Delphi 7 бағдарламалау ортасын жүктеңіз.
2. File New Application командасын орындау арқылы жаңа проект құрыңыз.
3. File Save All командасы көмегімен негізгі форманың бағдарламалық модулін StfMain.pas, ал файл проектісінің атын - Staff.dpr деп жаңа проектіні сақтаңыз.
4. File New Data Module командаларын орындау арқылы проектіге жаңа мәліметтер модулін қосыңыз. Мәліметтер модулінде SQL- серверге кіру үшін және мәліметтер тобымен жұмыс істеуге арналған барлық компоненттер орналасады.
5. Save All командасын орындап бағдарламалық модульдің атын StfDMod.pas деп сақтаңыз.
Бірден проектіге SQL- серверге қосылу регистрациясына арналған тағы да бір форманы қосыңыз. Ол формада деректер қоймасын орналастыру, қолданушының аты және пароль батырмаларын орналастырамыз.
6. Ол үшін File New Form командасын, содан кейін File Save командаларын орындап бағдараламалық модульдің аты ретінде StfLogin.pas-ты жазыңыз.
7. StfMain бағдарламалық модульінің INTERFACE бөлімінде StfDMod және StfLogin модульдеріне тапсырысын қосыңыз және StfLogin - нің де дәл сол бөлімде StfDMod модуліне тапсырысын қосыңыз.
8. Негізгі форманың Инспектор объектісі терезесіндегі Name қасиетіне fmMain мәнін жазыңыз. Екінші форма және мәліметтер модулінің дәл осы қасиеттеріне fmLogin және dmStaff мәндерін жазыңыз.
9. fmMain және fmLogin формаларының бірнеше қасиеттеріне 1- кестедегідей мәндерді беріп өзгертіңіз.

1-кесте. fmMain және fmLogin формаларының қасиеті

Қасиеті
Мәні
Түсініктеме
fmMain формасының қасиеті
Caption
Персонал
Форманың тақырыбы

Position

poScreenCenter
Қосымшаны жүктеген кезде негізгі форма экранның ортасында орналасады.

Visible

False
Қосымшаны жүктеген кезде негізгі форма, fmLogin формасы көмегімен деректер қоймасына қосылғаннан кейін ғана көрінеді.
fmLogin формасының қасиеті
Border Style
bsDialog
Форма өлшемдердің өзгерісіне қарамайды
Caption
Деректер қоймасына қосылу

Height
130
Пиксель мен форманың биіктігі
Position
poScreenCenter

Width
460
Пиксель мен форманың ені

fmLogin формасы
fmLogin формасының конструктор режиміндегі нақты көрінісі мына түрде болады. (8-сурет) .

8-сурет. fmLogin формасы

Бұл формада Additional бөлімінде орналасқан LabeledEdit компонентінің үшеуін және BitBtn компонентінің үшеуін орналастырамыз. Енді осы компоненттердің мәндерін 2- кестемен сәйкестіріп өзгертіңіз.

2-кесте. fmLogin формасының компоненттері

Қасиеті
Мәні
Түсініктеме
LabeledEdit компоненттері
Name қасиеті - компонент аты
1. Name = laedDatabase
2. Name = laedUser
3. Name = laedPassword

EditLabel.Caption
Деректер қоймасы
laedDatabase үшін

Қолданушы
laedUser үшін

Пароль
laedPassword үшін
Left
8
laedDatabase laedUser үшін

164
laedPassword үшін

PasswordChar
*
laedPassword үшін-пернетақтадан ендірілген белгілердің орнына ендірілетін белгі
Top
24
laedDatabase үшін

72
laedUser және laedPassword үшін
Width
300
laedDatabase үшін

145
laedUser және laedPassword үшін
BitBtn компоненттері
1. Name = bbFind
2. Name =bbConnect
3. Name = bbCancel

Kind
bkCancel
bbCancel үшін
Caption
Деректер қоймасын табу
bbFind үшін

Қосылу
bbConnect үшін

Қайтару
bbCancel үшін
Default
True
bbConnect үшін - таңдалған батырма. Бұл дегеніміз тышқан мен "Enter" батырмаларының қызметтерінің бірдей екендігін білдіреді.
Enabled
False
bbConnect үшін-қосылу параметрлері уақытша ендірілмейді. Батырма істен шығарылулы
Left
324

Top
12
bbFind үшін

40
bbConnect үшін

68
bbCancel үшін
Width
120

Енді fmLogin.ActiveControl қасиеті үшін laedDatabase компонентіне тапсырыс жасаңыз. Бұл fmLogin формасын активизациялаған кезде курсор автоматты түрде Деректер қоймасы өрісіне орналасатындығын білдіреді.

3.5. Staff.gdb деректер қоймасына қосылу

Staff.gdb деректер қоймасына қосылу үшін dbExpress бөлімінде орналасқан SQLConnection компонентін қолданамыз. Сонымен қатар StfLogin және StfDMod модульдеріне кішкене бағдарламалық код қосуға тура келеді.

SQLConnection компоненті
1. Мәліметтер модуліне SQLConnection компонентін орналаcтырып, оның Name қасиетіне sqlcStaff мәнін беріңіз.
ТSQLConnection класы объектісінің құрамында екі файл болады. Олар: dbxdrivers.ini және dbxconnections.ini. бұл файлдар Персонал бағдарламасында қолданылмайды.
2. Сондықтан dbxconnections.ini. файлының қолданылуын тоқтату үшін, sqlcStaff.LoadParamsOnConnect қасиетіне міндетті түрде False мәнін беруіміз керек. Нақты бір деректер қоймасына қосылу үшін міндетті түрде оның типін көрсетуіміз керек.
3. InterBase деректер қоймасына қосылу үшін, инспектор объектісі терезесінен sqlcStaff.Connection-Name қасиетінде IBConnection мәнін таңдаңыз. Нәтижесінде DriverName, GetDriverFunc, LibraryName және VendorLib қасиеттерінің мәндері автоматты түрде өзгереді. Бұл қасиеттер драйвер және қосылу әдістерін анықтайды. Оларды өзіміз өзгертуімізге болмайды. Персонал бағдараламасында қолданушылардың аты және парольді ендіру үшін арнайы форма қолданылады, сондықтан сұранысты автоматты түрде шығаруды тоқтатуымыз керек.
4. Ол үшін sqlcStaff. LoginPrompt қасиетінде False мәнін көрсетіңіз.
Енді fmLogin формасындағы деректер қоймасына қосылуды ұйымдастырайық.

Деректер қоймасына қосылудың бағдараламалық коды
1. Мәліметтер модуліне компоненттер палитрасындағы Dialogs бөлімінен OpenDialog компонентін орналастырыңыз. Ол қолданушы fmLogin формасындағы bbFind батырмасына тышқан көрсеткішін басқан кезде staff.gdb деректер қоймасын іздеу үшін қолданылады.
2. OpenDialog компонентіне od_1 атын беріңіз.
3. fmLogin формасына барып bbFind батырмасына тышқан көрсеткішін 2 рет шертіңіз.
4. Автоматты түрде құрылған bbFindClick әдісіне келесі жолдарды ендіріңіз:

with dmStaff.od_1 do
begin
Filter:= ` Деректер қоймасы InterBase*.gdb';
FileName:=laedDatabase.Text;
If Execute then
Begin
laedDatabase.Text:=FileName;
laedUser.SetFocus;
end;
end;
Бұл жерде стандатты диалогтық терезенің көмегімен .gdb кеңейтілуіндегі InterBase деректер қоймасының файлдарын іздеу орындалады.
5. Конструктор формасындағы laedDatabase компонентіне тышқан көрсеткішін 2 рет басыңыз. Құрылған laedDatabaseChange әдісіне келесі операторды ендіріңіз:

bbConnect.Enabled:= (laedDatabase.Text `') and
(laedUser.Text `') and
(laedPassword.Text `');

6. Формадан laedUser және laedPassword компоненттерін таңдап, инспектор объектісі терезесіндегі Events бөлімін таңдаңыз.

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

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Ғылыми зерттеу институтыныңақпараттық жүйесін жобалау
G N Garant сақтандыру компаниясының web-сайтын құру
МЕКТЕП САЙТТАРЫН ЖАСАУ ӘДІСТЕМЕСІ
Мәліметтер қорын басқару жүйесі бойынша дәрістер
«Жастар ресурстық орталығының» Веб сайтын құру
Мектеп ұстаздардың қағаз жұмысының автоматтандырылуы және ішкі жүйесінің реттелуін қызмет жасайтын веб парақша құру
Қазіргі Web сайттар туралы
Банк клиенттерінің әртүрлі төлемдерді орындауы үшін тіркелудің автоматты жүйесін жасау
Қазақ тілі түсіндірме сөздігінің тарихы
Спорт тақырыбына арналған веб - портал құру
Пәндер