Introducere.3 Capitolul I 1. Noţiuni generale despre Triggere.4 1.1 Importanţa şi avantajele utilizării triggerelor.4 1.2 Triggerele şi performanţa.5 2. Crearea unui Declanşator. Insrtucţiunea „Create Trigger”.7 Exemple: A. Folosirea unui trigger ca un mesaj.7 B. Folosirea rezoluţiei numelui întîrziat.8 C. Folosirea Columns_Update.10 2.1 Reguli de creare a unui trigger.11 2.2 Redenumirea triggerilor.11 2.3 Vizualizarea şu testarea unui trigger.14 2.4 Ştergerea unui trigger.14 3. Triggere multiple.15 4. Programarea triggerelor.16 A.Criptarea definiţiilor triggerelor.16 B. Instrucţiunea SET.17 C.Testări pentru modificările coloanelor specificate.17 D. Întîrzierea rezoluţiei numelui.18 E. Returnarea rezultatelor.18 5. Triggere ROLLBACK TRANSACTION.18 5.1 Folosirea tabelelor speciale Inserted şi Deleted.19 6. Consideraţii multilinie.19 7. Triggere de insert condiţionat.21 8. Valori NULL implicite şi explicite.23 9. Triggere încuibărite.24 Capitolul II. Crearea şi executarea triggerelor 1. Crearea B. D „Complex Sportiv”.29 2. Crearea şi executarea declanşatoarelor asupra bazei date.33
Introducere. În ultimele decenii se observă dezvoltarea pe scară largă a Sistemelor Informatice şi Tehnologiilor de Programare care au devenit în prezent principalele surse rapide de informaţii şi de operaţionalizare a datelor. În zilele noastre un număr crescînd de clienţi doresc din ce în ce mai multe informaţii. În unele domenii există cerinţe de realizarea rapoartelor lunare, trimestriale detaliate şi a multor altele. De aceia pentru a satisface aceste necesităţi organizaţionale ne sunt utile Bazele de Date proiectate care stochează şi afişează datele corespunzătoare. Un limbaj foarte important în gestiunea bazelor de date relaţionale îl constituie limbajul SQL. Sistemul de Gestiune MS SQL Server întreţine posibilitatea de prelucrare a datelor în reţea, de a asigura accesul aplicaţiior la baza de date utilizînd nucleul SQL Server. Acest sistem garantează integritatea, administrarea şi securitatea datelor. De asemenea el ne permite să aplicăm o gamă largă de operatori, instrucţiuni, funcţii şi proceduri care ne ajută la manipularea datelor. Un tip de procedură stocată ce ne permite ghidarea datelor sunt Declanşatoarele sau Triggerele. Acestea reprezintă nişte proceduri memorate strîns legate de careva evenimente din baza de date care duc la modificarea de stare a bazei de date şi care verifică diferite restricţii impuse de baza de date. În acest proiect voi desfăşura activitatea, importanţa şi avantajele utilizării Triggerilor. La rîndul său voi defini noţiunile de bază legate de această procedură. Utilizînd baza de date „Complex Sportiv”, voi aplica cunoştinţele mele asupra ei, efectuînd diferite operaţii şi exerciţii cu triggere care se îndeplinesc în mod automat la apariţia evenimentului de care este asociat. Triggerul se îndeplineşte independent de modul în care a apărut evenimentul şi menţine în mod automat integritatea bazei de date. Deci scopul meu este de a vedea toate situaţiile posibile de creare şi executare a triggerilor care vor gestiona baza de dată creată. Capitolul I 1. Notiuni generale despre Triggere Un trigger(declanşator) este un tip special de procedura stocata care este automat invocata ori de cate ori datele in tabela sunt modificate. Triggerele(Declanşatoarele) sunt invocate ca răspuns la instrucţiunile INSERT, UPDATE sau DELETE. Un trigger poate interoga alte tabele si poate include instrucţiuni complexe Transact-SQL. Triggerul(Declanşatorul) si instrucţiunea care îl declanşează sunt tratate ca o tranzacţie singulara care poate fi rollback din interiorul triggerului. Daca o eroare severă este detectată întreaga tranzacţie execută automat rollback. 1.1. Importanţa şi avantajele utilizării Triggerelor Triggerele sunt utile in urmatoarele moduri: • Triggerele pot modifica tabelele legate in baza de date. • Declanşatoarele sunt automate: ele se activează imediat după unele modificări ale datelor în tabelă, astfel ca intrare/înregistrare manuală sau o acţiune aplicată. De exemplu, utilizînd baza de date „Complex Sportiv” din anexă un trigger de delete pe coloana id_antrenor a tabelei autor cauzează o ştergerea corespondenta a liniilor din alte tabele, folosind coloana id_antrenor ca o cheie unica pentru a localiza liniile ca de exemplu in tabela echipa. • Triggerele pot refuza sau rollback modificările care violează integritatea referenţială, prin aceasta anulînd modificările de date încercate. Ca atare un trigger îşi poate face efectul cînd se modifica o cheie străina si noua valoare nu se potriveşte cu cheia ei primara. De exemplu, cînd se crează un trigger de inserare pe antrenor.id_antrenor acesta rollback o inserează daca noua valoare nu se potriveste cu careva valori in echipa.id_antrenor. • Triggerele pot forta restrictii care sunt mai complexe decît cele definite de constrîngerile CHECK. Spre deosebire de constrîngerile CHECK, triggerele pot indica coloane in alte tabele. De exemplu, un trigger poate folosi un SELECT din alt tabel pentru a face rollback modificările care încearcă sa crească un preţ al carţii mai mult decît un procent. • Triggerele pot de asemenea sa gasească diferenţe intre starea unei tabele înainte si după o modificare de date si acţionează bazîndu-se pe aceste diferenţe. • Triggerele multiple de acelaşi tip (INSERT, UPDATE sau DELETE) pe o tabela permit ca multiple acţiuni diferite sa aibă loc ca răspuns la aceleaşi instrucţiuni modificate.
Plătește în siguranță cu cardul și beneficiezi de garanția 200% din partea Proiecte.ro.
Simplu și rapid în doar 2 pași: completezi datele tale și plătești.