Az adatok információkká alakíthatókadatbázis használatához szükséges. Az adatok kezdetben olyan változók gyűjteményéből állnak, amelyeket különféle végrehajtási parancsok segítségével információkké változtatnak. Ilyen módon adatbázis-kezelésre van szükség az adatok tárolásához, amíg az adatok végrehajtása be nem fejeződik.

Jelenleg a legtöbb adatbázis-kezelő rendszernépszerű a MySQL. Számos ok, amiért sok felhasználó használja a MySQL-t, amelyek egyikét szinte a mai napig elérhető MySQL programozási nyelvek támogatják.

A MySQL-ben egy adatbázis jön létre a következővelasztali szolgáltatások kihasználása. A táblázatok mellett a MySQL az egyik indító funkcióval is rendelkezik. Akkor tudod, mit jelent a ravaszt? A trigger kifejezés még mindig ismeretlen. A triggerek azonban a parancsok gyűjteményévé válnak, amelyeket akkor hajtanak végre, amikor a táblázatban különféle műveletek történnek.

Ebben a cikkben elmagyarázzuk a következőket:a triggerek, triggerfunkciók megértése és néhány példa a triggerek alkalmazására a MySQL-ben. Ily módon jobban tudatában lesz az eseményindítók vita részleteinek. Az alábbiakban bemutatjuk a trigger definíciójának első megbeszélését.

A trigger megértése

triggerek és trigger funkciók megértése

A DBMS-ben (Adatbázis-kezelő rendszer), az trigger a szkriptek gyűjteményetáblákhoz, nézetekhez vagy sémákhoz kapcsolódik, amelyek automatikusan futnak, ha vannak futtatott események. Az esemény olyan műveleteket tartalmaz, amelyeket általában az adatbázis feldolgozása során hajtanak végre, például:

  • DML (adatmanipulációs nyelv), amely magában foglalja a DELETE, INSERT vagy UPDATE fájlokat
  • DDL (Data Definition Language), amely tartalmazza a CREATE, ALTER vagy DROP elemeket
  • Egyéb adatbázis-műveletek, például SERVERERROR, LOGON, LOGOFF, STARTUP vagy SHUTDOWN)

Egyszerűen fogalmazva, a trigger létrehozására szolgáló parancs a következő:

CREATE TRIGGER nama_trigger [ELŐTT | UTÁN]
[INSERT / UPDATE / DELETE]
BE nama_table
MINDEN HASZNÁLATRA
BEGIN
// indító test
END;

Az eseményindító létrehozásakor alkalmazott általános parancsforma leírása, nevezetesen:

  • nama_trigger: a trigger neve, amelyet a MySQL elnevezési jellemzőivel összhangban hoztak létre
  • [BEFORE | AFTER]: a trigger automatikus végrehajtásának idejét jeleníti meg, akár a sor adatainak módosítása előtt, akár után. Tehát a választás UTÁN vagy ELŐTT.
  • [INSERT | UPDATE | TÖRLÉS]: a kiváltót okozó esemény meghatározására szolgál, az esemény választása INSER, UPDATE és DELETE lehet.
  • nama_table: azt a táblát mutatja, amelyet a trigger meg fog tenni benne
  • trigger_body: megmutatja a MySQL parancssorát, amely automatikusan fut, ha az esemény aktív.

Általában aA trigger csak parancs. Ha azonban több parancsot szeretne megadni benne, akkor használja ezt a parancsot a BEGIN ... END blokkba. A triggerek használata akkor történik, ha változások történnek az rekordtáblában. Ilyen módon hozzá kell adnia egy hivatkozást a rekordhoz, nevezetesen az OLD és az ÚJ. Az OLD a referenciarekordot jelzi a változás megtörténte előtt, míg az OLD a referencia rekordot jelzi a változás után.

Trigger funkció

indító funkció

Általában egy relációs adatbázisban triggerek lehetneka tábla-végrehajtási parancs végrehajtása során találkozott. Hasznosabb indítóként jár az egyszerű programozás megírása, és az információk egységesek maradnak az adatbázisban. Ezen felül számos indító funkció van, amelyeket az alábbiakban ismertetünk.

1. Az adatok integritása

Triggerrel védekezhetaz adatbázisban található tábla integritása. Mert az adatbázis-feldolgozáshoz kapcsolódó műveleteket hajthat végre, mint például az INSERT, UPDATE és DELETE

2. A hiba elkerülése

A MySQL triggerei megakadályozzák az adatműveletek hibáit. Ha hiba történik a trigger meghatározásakor, akkor a hiba nem zavarja az aktuális triggert.

3. Ütemezze a munkafeladatokat

Amikor a trigger fut, akkor különféle programozási nyelveket használhat anélkül, hogy meg kellene zavarnia, hogyan lehet elérni.

4. A jogosulatlan tranzakciós folyamatok megakadályozása

A gyakorlatban a szokásos ravaszt használjáktranzakciós folyamatok lefolytatása. Mentheti a tranzakciós rekordot egy másik táblába (előzményekbe) anélkül, hogy félnie kellene az adatok frissítéséről vagy törléséről. Az összes változás véletlenszerűsíthető a gyártás időpontja alapján is.

Trigger példa

Miután megértette a ravaszt jelentésétfunkcióival együtt a szerző több példát fog mutatni a triggerek használatának az adatbázisban történő alkalmazásáról. Általában a triggerek INSERT, UPDATE és DELETE eseményekkel aktiválhatók. Az alábbiakban részletesebben ismertetjük az esemény alkalmazásának néhány példáját. Először azonban az adatbázisban több táblát kell létrehoznia.

1. Értékesítési táblázat

CREATE TABLE Értékesítés (
sell_INT INT (8) NULL AUTO_INCREMENT,
VARCHAR customer_code (10) NULL,
code_brg VARCHAR (5),
VARCHAR elem_neve (35),
az INT száma (6),
az INT ára (12),
PRIMARY KULCS (sales_id);

2. Beszerzési táblázat

CABATE TABLE vásárlások (
vásárolni INT_8 (8) NOT NULL AUTO_INCREMENT,
code_brg VARCHAR (5),
VARCHAR elem_neve (35),
az INT száma (6),
az INT ára (12),
PRIMARY KULCS (id_buy);

3. Árukatalógus

CREATE TABLE elem (
id_brg INT (8) NULL AUTO_INCREMENT,
VARCHAR elem_neve (35),
az INT száma (6),
PRIMARY KULCS (id_brg);

A triggerek következő felhasználásait, amelyeket tudnia kell:

a. TUDNIVALÓK AZ INGYENES HASZNÁLATA BE

Ennek az eseményindítónak a funkciója az indító feladat futtatása, mielőtt az adatok táblába történő hozzáadása (beszúrása) megtörténik. Az alábbiakban látható a trigger szintaxis a MySQL-ben:

CREATE TRIGGER nama_trigger
BEVEZETÉS ELŐTT
BE nama_table MINDEN HASZNÁLATRA
BEGIN
// változó deklaráció
END;

Tegyük fel például, hogy ellenőrizni szeretnéúj elem adatainak hozzáadása a Táblázat táblába. Ha az elemet korábban már megadta, figyelmeztetés jelenik meg: "Az elem azonosítója már létezik". Akkor az egyszerű parancs a következő:

CREATE TRIGGER cikk készlet
BEVEZETÉS ELŐTT
MINDEN HASZNÁLATI ÁRUKRA
BEGIN
HA NEM létezik (Válassza az id_brg elemet WHERE-ról id_brg = NEW.id_brg)
AKKOR
SET ÚJ. Cikkszám = ÚJ tétel neve. ÚJ. Szám = ÚJ. Szám;
ELSE
SET @status = CONCAT ('ID', NEW.id_brg, 'már létezik');
VÉGREHAJTÁS;

b. Trigger INSERT után

Ennek az eseményindítónak a funkciója az indító feladat futtatása, miután az adatok táblába történő hozzáadása (beszúrása) megtörtént. Az alábbiakban látható a trigger szintaxis a MySQL-ben:

CREATE TRIGGER nama_trigger
BESZERELÉS UTÁN
BE nama_table MINDEN HASZNÁLATRA
BEGIN
// változó deklaráció
END;

Például, ha az eladott áruk adatait szeretné hozzáadni, akkor az elem táblázat összege automatikusan csökkenni fog. Akkor a triggerek parancs a MySQL-ben

CREATE TRIGGER sell_all
BESZERELÉS UTÁN
MINDEN HASZNÁLATBAN
BEGIN
UPDATE elem
SET összeg = ÚJ
WHERE id_brg = NEW.id_brg,
END;

c. TUDNIVALÓK A trigger frissítése előtt

Ennek a triggernek az a funkciója, hogy futtassa a triggerfeladatokat, mielőtt megtörténik a táblázatban lévő adatok megváltoztatásának (frissítésének) folyamata. Az alábbiakban látható a trigger szintaxis a MySQL-ben:

CREATE TRIGGER nama_trigger
Frissítés előtt
BE nama_table MINDEN HASZNÁLATRA
BEGIN
// változó deklaráció
END;

Például az Elemtáblában, ahol Id_brg ='BRG001', az item_name = "Plate" feliratú. A BEfrissítés előtt parancs használatával az elem neve "Üveg" -re változik. Akkor a megfelelő eset a fenti esethez:

Készítsen valódi új termékeket
MINDEN HASZNÁLATI ÁRUK frissítése előtt
BEGIN
UPDATE elem
SET elem_neve = 'Üveg'
WHERE id_brg = 'BRG001'; SET @status = CONCAT ('Elem adatok azonosítóval', NEW.id_brg, 'frissítve');</ P>

END;

d. TÖRVÉNY HATÁLYON

Ennek a triggernek az a funkciója, hogy futtassa a triggerfeladatokat, mielőtt megtörténik a táblázatban lévő adatok törlésének (törlésének) folyamata. Az alábbiakban látható a trigger szintaxis a MySQL-ben:

CREATE TRIGGER nama_trigger
TÖRLÉS UTÁN
BE nama_table MINDEN HASZNÁLATRA
BEGIN
// változó deklaráció
END;

Például törölni kívánja az elemrekordotid_brg = 'BRG001', item_name = 'Glass'. Ezután automatikusan az árukészlet növekszik a törölt adatelemekkel összhangban. A TÖRLÉS UTÁN szintaxisáról:

Készítsen valódi új termékeket
MINDEN HASZNÁLATI ÁRUK frissítése előtt
BEGIN
UPDATE elem
SET összeg = összeg + Öreg
WHERE id_brg = Öreg: Összeg;
END;

Ez a vita megértésének vita,funkciók, valamint a triggerek alkalmazásának példái a MySQL használatával. A szerző reméli, hogy a fenti cikk segít megérteni és példákat hozni a kiváltókról.

Comments 0