Ю тся следую щие вопросы : ■ Структура блоков я зы к а o racle p L /s q L
Download 0.9 Mb. Pdf ko'rish
|
Майкл Мак-Локлин - Oracle DB 11g. Программирование на языке PL-SQL - 2014 better 51-73
50
Гпава 2 Триггеры базы данных Т ри ггеры базы д ан ны х являю тся сп ец и ал и зи ро в ан н ы м и х ран и м ы м и процедурам и, ко то р ы е запускаю тся п р и н аступлении соб ы тий в базе дан ных. О н и р аб отаю т во врем я между вводом ком анды и вы п ол н ен и ем сис тем н ы х д ей стви й п р и уп равлен ии базой данны х. П оскольку он и р аб о та ю т в п ром еж уточн ое врем я, вы не м ож ете и сп ол ьзовать язы к уп равлен ия дан ны м и (d a ta c o n tro l language, DCL) в тр и ггерах , то есть SAVEPOINT, ROLLBACK и COMMIT. Вы м ож ете задать п ять ти п о в тр и ггер о в в сем ействе продуктов O racle d atabase l l g : ■ Т ри ггеры язы к а о п р ед ел ен и я дан ны х (d ata d e fin itio n language, DDL) запускаю тся, когда вы задаете ком анды создать (create), и зм е н и ть (alter), п ер еи м ен о в ать (renam e) и ли у н и ч то ж и ть (d ro p ) объек ты в схеме базы данны х. О н и удобны для о тсл еж и ван и я н е э ф ф е к ти в н о й п рак ти к и п р о гр ам м и р о в ан и я, когда, н ап ри м ер , програм м ы создаю т (create) и ун ичтож аю т (d ro p ) в р ем ен н ы е табли цы вм есто эф ф ек ти в н о го и сп ользован и я коллекц и и O racle, находящ ихся в о п ер ати в н о й пам яти. В рем енн ы е таб ли цы могут п р и в о д и ть к ф р аг м ен тац и и дискового п р о стр ан ств а и со врем енем сн и ж ать п р о и зв о д и тельн ость базы данны х. ■ Т ри ггеры язы к а м ан и п ули рован и я дан ны м и (d ata m an ip u latio n language, DML) и ли тр и ггер ы уровня стр о к запускаю тся, когда вы вставляете (insert), о б н овл яете (u p d a te ) и ли ун и ч тож аете (delete) д ан ны е в таблице. Вы м ож ете и сп ользовать это т ти п тр и ггер ов , ч тобы аудировать, п р о вер ять , сох ран ять и зам ен ять зн ач ен и я до и х и зм ен ен и я. А втом атическая нум ерация псевдочи слового п ер в и ч н ого клю ча (prim ary KEY) ч асто вы п о л н яется с помощ ью тр и гге р а DML. ■ С оставн ы е тр и ггер ы р аб отаю т как тр и ггер ы од н о врем ен н о уровня о п е р а то р а и уровня стр о к и п р и вы п о л н ен и и вставки (in sert), и зм е н ен и я (u p d a te ) и ли удаления (delete) дан ны х и з таблицы . Э ти т р и г геры п озвол яю т получать и н ф орм ац и ю в ч еты р ех в рем ен н ы х то ч ках: (а) п еред запуском о п ер ато р а, (Ь) п еред и зм ен ен и ем каж дой строки , затрон утой запущ енны м оп ер ато р о м , (с) после и зм ен ен и я каж дой строк и , затрон утой запущ енны м о п ерато ро м , и (d) после запуска о п ератора. Вы м ож ете и сп о л ьзо вать э то т ти п тр и ггер о в , ч тобы аудировать, п р о вер ять , со хр ан ять и зам ен ять зн ач ен и я до их и зм ен ен и я, если необходи м о п р ед п р и н и м ать д ей стви я о д н овр е м енн о н а уровне соб ы ти й о п ер ато р а и н а уровне со б ы ти й каж дой строки. ■ Т ри ггеры зам ещ ени я INSTEAD OF (вместо) п озвол яю т п р ер в ать вы п о л н ен и е о п ер ато р о в DML и п ер ео р и ен т и р о в а ть о п ер ато р ы DML. Т ри ггеры зам ещ ени я INSTEAD OF (вместо) часто использую тся, ч то бы п о зво л и ть вам осущ ествлять зап и сь в п ред ставлен и я, кото р ы е зап рещ аю т прямую запись, поскольку эти п р ед ставлен и я «не об Основы PL/SQL 51 новляем ы е». Т ри ггеры зам ещ ени я INSTEAD OF (вместо) п р и м ен яю т бизнес-правила и напрямую осущ ествляю т вставку (in sert), обнов л ен и е (u p d a te ) и удаление (delete) стр о к и з соответствую щ их таб лиц , отн о сящ и хся к эти м н е обновляем ы м представлен и ям . ■ С истем ны е, и ли тр и ггер ы базы данны х, запускаю тся п р и возн и кн о в ен и и си стем н ы х соб ы ти й в базе дан ны х - тр и ггер соб ы тий logon (подклю чение) и log off (отклю ч ен и е), используем ы е в Главе 13. Э ти тр и ггер ы п озвол яю т отслеж ивать си стем н ы е со б ы ти я и пока зы вать их пользователю . Итоги В это й главе р ассм о тр ен ы осн овы процедурн ого я з ы к а /я з ы к а структу р и р о ва н н ы х зап росов (P ro c ed u ral L a n g u a g e / S tru ctu red Q uery L anguage, P L /S Q L ) и п оказано, как улучш ить работу с P L /S Q L . Э то долж но пробу дить ваш и н те р ес и сп особствовать ж еланию и скать дальнейш ую и н ф о р мацию. Download 0.9 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling