Rozdíl mezi spouštěči a kurzory

Rozdíl mezi spouštěči a kurzory
Rozdíl mezi spouštěči a kurzory

Video: Rozdíl mezi spouštěči a kurzory

Video: Rozdíl mezi spouštěči a kurzory
Video: 02 Rozdíl mezi facebook profily 2024, Červen
Anonim

Spouštěče vs kurzory

V databázi je spouštěčem procedura (segment kódu), která se automaticky spustí, když v tabulce/pohledu nastanou určité události. Spouštěče se mimo jiné používají hlavně pro udržování integrity v databázi. Kurzor je řídicí struktura používaná v databázích k procházení záznamů databáze. Je velmi podobný iterátoru, který poskytuje mnoho programovacích jazyků.

Co jsou spouštěče?

Spouštěč je procedura (segment kódu), která se provede automaticky, když v tabulce/pohledu databáze nastanou určité události. Spouštěče se mimo jiné používají hlavně pro udržování integrity v databázi. Spouštěče se také používají k vynucení obchodních pravidel, auditování změn v databázi a replikaci dat. Nejběžnější spouštěče jsou spouštěče jazyka DML (Data Manipulation Language), které se spouštějí při manipulaci s daty. Některé databázové systémy podporují jiné než datové spouštěče, které se spouštějí, když nastanou události jazyka DDL (Data Definition Language). Některé příklady jsou spouštěče, které se spouštějí při vytváření tabulek, během operací potvrzení nebo vrácení atd. Tyto spouštěče lze použít zejména pro auditování. Databázový systém Oracle podporuje spouštěče na úrovni schématu (tj. spouštěče spouštěné při úpravě databázových schémat), jako jsou po vytvoření, před změnou, po změně, před vypuštěním, po vypuštění atd. Čtyři hlavní typy spouštěčů podporované Oracle jsou spouštěče na úrovni řádků, Spouštěče na úrovni sloupce, Spouštěče pro každý typ řádku a Spouštěče pro každý typ příkazu.

Co jsou kurzory?

Kurzor je řídicí struktura používaná v databázích k procházení záznamů databáze. Je velmi podobný iterátoru, který poskytuje mnoho programovacích jazyků. Kromě procházení záznamů v databázi kurzory také usnadňují vyhledávání dat, přidávání a mazání záznamů. Definováním správné cesty lze kurzory použít také k procházení zpět. Když dotaz SQL vrátí sadu řádků, ty jsou ve skutečnosti zpracovány pomocí kurzorů. Aby bylo možné kurzor použít, musí být deklarován a přiřazen mu název. Poté je třeba kurzor otevřít pomocí příkazu OPEN. Tato operace umístí kurzor těsně před první řádek výsledné sady záznamů. Poté musí kurzor provést operaci FETCH, aby skutečně dostal řádek dat do aplikace. Nakonec musí být kurzor uzavřen pomocí operace CLOSE. Zavřené kurzory lze znovu otevřít.

Jaký je rozdíl mezi spouštěči a kurzory?

Spouštěč je procedura (segment kódu), která se provádí automaticky, když v tabulce/pohledu databáze nastanou určité události, zatímco kurzor je řídicí struktura používaná v databázích k procházení záznamů databáze. Kurzor lze deklarovat a používat v rámci spouštěče. V takové situaci by byl příkaz deklarovat uvnitř spouštěče. Pak by byl rozsah kurzoru omezen na tento spouštěč. Pokud je v rámci spouštěče deklarován kurzor na vložené nebo odstraněné tabulce, nebude takový kurzor přístupný z vnořeného spouštěče. Jakmile je spouštění dokončeno, všechny kurzory vytvořené ve spouštěči budou přiděleny.

Doporučuje: