шығындарымен жиі байланысты. Егер осы ресурстарды тиімді пайдалануда сақталатын
процедуралар мен қолданбалы бағдарламалар қолданылса, триггерлерді қолданбауға болады.
Триггерлер – деректер қорындағы деректер тұтастығын қолдауда қолдайтын ерекше құрал.
Тұтастыққа шектеу, ереже жəне үнсіз келісім бойынша мəндер көмегімен
функционалдықтың керек деңгейіне жету əрдайым бола бермейді. Жиі деректер тексерісінің
құрделі алгоритмді жүзеге асыруталап етіледі, олар дұрыс жəне ақиқатты кепілдік етеді.
Керегінше байланысқан деректерді өзгертуге қатысты кейде кесте мəні өзгеруін бақылау қажет
болады. Триггерлерді ереже, стандартты мəндер жəне т.б. сəйкес барлық операциялар
орындалғаннан кейн іске қосылатын фильтр ретінде қарастыруға болады.
Триггерлер байланысқан кестедегі деректерді өзгерту əрекетінде сервермен аутоматты
қосылатын сақталатын процедураның арнайы типі триггер болып табылады. Əрбір триггер
нақты бір кестеге байланады. Онымен туындайтын барлық деректер модификациясы бір
транзакция ретінде қарастырылады. Қате табылған жағдайда немесе деректер тұтастығы
бұзылғанда осы транзакция шегіндіріледі. Осылайша өзгеріс енгізуге тыйым салынады. Соған
қоса триггермен жасалған барлық өзгерістер бұзылады.
Триггерді тек деректер қорының иесі құрады. Бұл шектеу кесте құрылымының онымен
басқа объектілердің байланыс тəсілдері жəне т.б. абайсызда өзгеруінен сақтайды.
Триггер пайдалы жəне де қауіпті құрал болып табылады. Оның жұмысының дұрыс емес логика
кезінде толық деректер қорын оңай жоюға болады, сондықтан триггерлерді мұкияттылықпен құрау
керек.
Жай ішкі программадан айырмашылығы, триггер триггерлік жағдайдың тууының əрбір
жағдайында айқын емес орындалады, оған қоса ол аргументсіз болады. Оны іске қосу кейде триггер
қосылуы дейді. Триггерлер көмегімен келесі мақсаттарға жетеміз:
• тұтастық шектеулер көмегімен кесте үшін бекітілгендерді қолдау мүмкін болса,
енгізілген деректердің дұрыстығына тексеріс жəне деректер тұтастығының құрделі
шектеулерін орындау;
• белгілі бір түрде жүзеге асырылған кесте жаңаруында кейбір əрекеттерді орындау
қажеттілігін еске салатын ескертулерді шығару;
• орындаған адамдар жəне енгізілген өзгерістер жайлы мəліметтерді фиксациялау
көмегімен жинақтыру;
• репликацияны қолдау.
Бақылау сұрақтары:
1. Триггер дегеніміз не?
2. Триггердің қандай типтері бар?
3. Триггер қалай программаланады?
4. Триггер қалай жойылады?
5. Қандай триггер үнсіз келісім бойынша құрылады?
Əдебиеттер:[2] 112-115 бет. [3]
262-274 бет. қ[1] 46-50 бет.
2 кредит сағат.
Тақырыбы:
Триггерлер
Дəріс мазмұны:
1. Триггер типтері.
2. Триггерді программалау
Триггерлер байланысқан кестедегі деректерді өзгерту əрекетінде сервермен аутоматты
қосылатын сақталатын процедураның арнайы типі триггер болып табылады. Əрбір триггер
нақты бір кестеге байланады. Онымен туындайтын барлық деректер модификациясы бір
транзакция ретінде қарастырылады. Қате табылған жағдайда немесе деректер тұтастығы
бұзылғанда осы транзакция шегіндіріледі. Осылайша өзгеріс енгізуге тыйым салынады. Соған
қоса триггермен жасалған барлық өзгерістер бұзылады.
Триггерді тек деректер қорының иесі құрады. Бұл шектеу кесте құрылымының онымен
басқа объектілердің байланыс тəсілдері жəне т.б. абайсызда өзгеруінен сақтайды.
Триггер пайдалы жəне де қауіпті құрал болып табылады. Оның жұмысының дұрыс емес логика
кезінде толық деректер қорын оңай жоюға болады, сондықтан триггерлерді мұкияттылықпен құрау
керек.
Жай ішкі программадан айырмашылығы, триггер триггерлік жағдайдың тууының əрбір
жағдайында айқын емес орындалады, оған қоса ол аргументсіз болады. Оны іске қосу кейде триггер
қосылуы дейді. Триггерлер көмегімен келесі мақсаттарға жетеміз:
• тұтастық шектеулер көмегімен кесте үшін бекітілгендерді қолдау мүмкін болса,
енгізілген деректердің дұрыстығына тексеріс жəне деректер тұтастығының құрделі
шектеулерін орындау;
• белгілі бір түрде жүзеге асырылған кесте жаңаруында кейбір əрекеттерді орындау
қажеттілігін еске салатын ескертулерді шығару;
• орындаған адамдар жəне енгізілген өзгерістер жайлы мəліметтерді фиксациялау
көмегімен жинақтыру;
• репликацияны қолдау.
Негізгі CREATE TRIGGER команда форматы төменде көрсетілген:
CREATE TRIGGER триггер_аты
BEFORE | AFTER <триггер_жағдай>
ON <кесте_аты>
[REFERENCING <жаңа_немесе_ескі_алиастар_тізімі> ]
[FOR EACH { ROW | STATEMENT}]
[WHEN (триггер_шарты) ]
<триггер_түрі>
Бақылау сұрақтары:
1. Триггер дегеніміз не?
2. Триггердің қандай типтері бар?
3. Триггер қалай программаланады?
4. Триггер қалай жойылады?
5. Қандай триггер үнсіз келісім бойынша құрылады?
Əдебиеттер:[2] 112-115 бет. [3]
262-274 бет. қ[1] 46-50 бет.
14- апта
1 кредит сағат.
Тақырыбы:
Транзакциялар жəне тосқауылдар.
Дəріс мазмұны:
1. Транзакциялар жəне тосқауылдар.
2. Транзакцияларды басқару.
Транзакция концепциясы – кез-келген клиент/сервер деректер қорынын ажырамас бөлігі.
Транзакция ішкі деректер қорына əсер ететін деректерді манипуляциялайтын операторлардың
бір ізділігі түсініледі (оқу, жою, қою, модификация), мүмкін болатын екі нəтиженің біреуіне
əкеледі: егер барлық операторлар дұрыс болса, бір ізділік орындалады, егер бір оператор сəтті
аяқталмаса, онда транзакция шегінеді. Транзакцияны өңдеу деректер қорындағы ақпарат
тұтастығына кепілдік береді. Осылайша, транзакция деректер қорын бір тұтастық жағдайынан
басқаға аударады.
Транзакция дегеніміз – бүтін ретінде қарастырылатын SQL-инструкцияларының тізімі.
Транзакцияға кіретін инструкциялар бір-бірімен байланысқан іс-əрекеттер орындайды. Əр
инструкция жалпы міндеттің бір бөлігін орындайды, бірақ ол бөліктің де шешімін тауып,
барлық инструкцияларды орындау керек.
Транзакция механизмін қолдау – ДҚБЖ-ң жетілген деңгейінің көрсеткіші. Транзакцияны
қолдау деректер қорының тұтастығын қамтамасыз етудің негізі болып табылады. Сондай-ақ,
транзакция көпқолданушылық жүйелерде жекеленудің негізін құрайды, мұнда бір деректер
қорымен параллель бірнеше қолданушылар немесе қолданбалы программалар жұмыс істей
Достарыңызбен бөлісу: |