Аталған бағандардың әрқайсысын ӛзгерткенде,
сәйкес мән
тағайындалады. SELECT нҧсқаулығында кӛрсетілгендей шартты
қанағаттандыратын барлық жазбалар ҥшін ӛзгертулер жасалады. SET
сӛйлемі орындалатын ӛзгертулердің тізімін: ӛзгертуге болатын
айнымалының аты және бағаның жаңа мәні теңдік белгісінен кейін
анықталады.
Мән INSERT операторы сияқты, кҥрделі кҥрделі ӛрнек
болуы мҥмкін. Ҥтірлер бойынша келесі SET тармақтары кестедегі
басқа бағандардың мәндерін тізімдеуі мҥмкін. Оператордағы WHERE
тармағы қолданыстағы деректерді ӛзгерту әрекеті қолданылатын
жолдардың жиынын анықтайды. Егер бҧл сӛйлем кӛрсетілмесе,
кестенің барлық жолдары ӛзгереді:
UPDATE ПРОДАЖИ SET Қҧны=Қҧны*2 WHERE Тауар =
«Ҧн»
Ӛнім кестесіндегі оператор қызметінің нәтижесі ретінде «Баға»
ӛрісіндегі «Тауар» ӛрісінің мәні «Ҧн»
болып табылатын барлық
жазбаларда екі еселенген болады.
DELETE операторы нысаннан жазбалар тобын жою ҥшін
пайдаланылады. Белгілі бір жағдайда тек бір ғана жазбаны жоюға
болады. DELETE мәлімдемесі пішімі:
DELETE FROM <нысан>
[WHERE <шарты>]
Іздеу шартына сәйкес келетін барлық жазбалар жойылады. WHERE
сӛйлемін жойсаңыз, барлық жазбалар нысаннан жойылады.
Тӛменде САТЫЛЫМДАР кесте қантты сататын фактілердің
барлық жазбаларын жойатын мысал болып табылады:
DELETE САТЫЛЫМДАРWHERE Тауар= «Қант»
12.5.
САҚТАЛАТЫН ІС ШАРАЛАР
МЕН ТРИГГЕРЛЕР
12.5.1. Сақталатын іс шаралар
мен тиггерлердің тілі
Сақталған процедуралар мен триггерлер - дерекқордың
метадеректер аймағында сақталған бағдарламалар. Олар сервер
жағында орындалады, ол кӛптеген жағдайларда ҥнемдеуге мҥмкіндік
береді
271
Сақталған
процедураларға,
триггерлерге
және
клиенттік
қосымшаларға жалпыға қол жетімділікке қол жеткізуге болады.
Тригерге тікелей қол жеткізуге болмайды - кесте (деректерді ӛзгерту)
немесе дерекқор оқиғасы ҥшін белгілі
бір оқиға болған кезде олар
автоматты тҥрде шақырылады. Әрбір іс-шара кесте ҥшін екі кезеңі бар
- тиісті оқиғаға (дейін) дейін және іс-шараға (кейін) пайда болған соң.
SQL тілінің кеңейтімі сақталатын процедуралар мен триггерлердегі
деректерді
ӛңдеуге
арналған
алгоритмдерді
сипаттау
ҥшін
қолданылады. Бҧл кеңейтім процедуралық SQL (PSQL) немесе
сақталатын процедуралар тілі мен триггерлер деп аталады. Тіл әдеттегі
тағайындалу операторларын, филиал операторларын және циклдік
операторларды
қамтиды.
Триггерлерде
нақты
мәтінмән
айнымалыларын пайдалануға болады.
Сақталған рәсімдер мен триггерлердің
тілі классикалық
бағдарламалау тілдерінің барлық негізгі қҧрылымдарын қамтиды.
Сонымен қатар, ол дерекқор кестелерінен (INSERT, UPDATE, DELETE
және SELECT) бар деректерді қосу, ӛзгерту, жою және алу ҥшін
бірнеше
ӛзгертілген
операторларды
қамтиды.
Сақталған
процедуралардың тілінде ешқандай метадеректер ӛзгермейді.
Сақталған процедуралар мен триггерлерде белгілі бір оқиғалар
(оқиғалар)
туралы клиенттерге хабарлауға, кедендік ерекшеліктерді
шығаруға мҥмкіндік беретін қҧралдарды пайдалануға болады.
Деректер қорын қосу әрекеттерін орындауға жол берілмейді,
транзакцияны бастауға,
транзакцияларды жасауға, қҧтқару жолдарын
жасауға, қҧтқарушыларға оралу, транзакцияларды растауға немесе
жоюға болмайды. Сақталған процедура мен триггер сақталатын
процедура тікелей анықталған транзакция
контекстінде орындалады
немесе деректерді ӛңдеу операциясы дерекқорда орындалды,
нәтижесінде триггер автоматты тҥрде іске қосылды. Егер дерекқор
дерекқордан қосылып, дерекқордан ажыратылған кезде шақырылатын
болса, онда ол ҥшін әдепкі транзакция басталады.
Сақталған процедуралар мен триггерлер
жасау синтаксисінде
тақырып пен денені таңдауға болады. Тақырыпта бағдарлама
нысанының атауы, жергілікті айнымалылардың сипаттамасы бар.
Триггерлер ҥшін тақырып дерекқор оқиғасын және триггер автоматты
тҥрде іске қосылатын кезеңді анықтайды. Сақталған рәсімнің
тақырыбында кіріс және шығыс параметрлерін кӛрсетуге болады.
Сақталған процедураның немесе триггердің қҧралы - бҧл блок
Достарыңызбен бөлісу: