Разлика между тригери и курсори

Разлика между тригери и курсори
Разлика между тригери и курсори

Видео: Разлика между тригери и курсори

Видео: Разлика между тригери и курсори
Видео: КРАСИВЫЕ КУРСОРЫ ДЛЯ WINDOWS / КРАСИВЫЕ КУРСОРЫ 2020 / RGB КУРСОР 2024, Ноември
Anonim

Задействания срещу курсори

В базата данни задействането е процедура (кодов сегмент), която се изпълнява автоматично, когато в таблица / изглед се появят някои специфични събития. Сред другите му приложения, тригерите се използват главно за поддържане на целостта в базата данни. Курсорът е контролна структура, използвана в базите данни за преминаване през записите в базата данни. Той е много подобен на итератора, предоставен от много езици за програмиране.

Какво представляват тригерите?

Задействането е процедура (кодов сегмент), която се изпълнява автоматично, когато се появят някои специфични събития в таблица / изглед на база данни. Сред другите му приложения, тригерите се използват главно за поддържане на целостта в базата данни. Задействанията също се използват за налагане на бизнес правила, одит на промените в базата данни и репликиране на данни. Най-често срещаните задействания са тригерите на езика за управление на данни (DML), които се задействат при манипулиране на данни. Някои системи за бази данни поддържат тригери без данни, които се задействат, когато възникнат събития на езика за дефиниране на данни (DDL). Някои примери са тригери, които се задействат, когато се създават таблици, по време на операции по фиксиране или връщане назад и т.н. Тези тригери могат да бъдат използвани особено за одит. Системата на база данни на Oracle поддържа задействания на ниво схема (т.е.тригери, задействани при модифициране на схеми на база данни), като след създаване, преди промяна, след промяна, преди изпускане, след изпускане и др. За всеки тип изявление задейства.

Какво представляват курсорите?

Курсорът е контролна структура, използвана в базите данни за преминаване през записите в базата данни. Той е много подобен на итератора, предоставен от много езици за програмиране. В допълнение към преминаването през записи в база данни, курсорите също улесняват извличането на данни, добавянето и изтриването на записи. Чрез дефиниране на правилния начин курсорите могат да се използват и за преминаване назад. Когато SQL заявка връща набор от редове, те всъщност се обработват с помощта на курсори. Курсорът трябва да бъде деклариран и да му бъде присвоено име, преди да може да бъде използван. След това курсорът трябва да се отвори с помощта на командата OPEN. Тази операция ще постави курсора точно преди първия ред от набора от резултати. След това курсорът трябва да извърши операцията FETCH, за да получи редица данни в приложението. И накрая, курсорът трябва да бъде затворен с помощта на операцията CLOSE. Затворените курсори могат да бъдат отворени отново.

Каква е разликата между тригери и курсори?

Задействането е процедура (кодов сегмент), която се изпълнява автоматично, когато се появят някои специфични събития в таблица / изглед на база данни, докато курсорът е контролна структура, използвана в базите данни за преминаване през записите в базата данни. Курсорът може да бъде деклариран и използван в рамките на тригер. В такава ситуация декларираният оператор ще бъде вътре в спусъка. Тогава обхватът на курсора ще бъде ограничен до този тригер. В рамките на задействане, ако курсор е деклариран върху вмъкната или изтрита таблица, такъв курсор няма да бъде достъпен от вложен тригер. След завършване на задействането всички курсори, създадени в задействането, ще бъдат премахнати.

Препоръчано: