Logarea în baze de date Interbase (firebird)
Autentificare într-un fișier text
Cel mai comun mod de a stoca informații despre program. Acesta este cel mai ușor de toate metodele, deoarece informațiile sunt stocate într-un fișier text și nu este nevoie să se conecteze la baza de date.
Aplicarea acestei metode este adecvată pentru informațiile de logare nu este utilități mari care nu funcționează cu baza de date.
Logging informații în Firebird date (Intebase) bază de date
Bazele de date de logare pot fi implementate în mai multe moduri. Uneori programatorii de logare metode sunt selectate în funcție de calificările lor.
Logging în baza de date a programului
Crearea unui jurnal în acest caz, se realizează direct din program. Această metodă este simplu de implementat, puteți înregistra aproape orice informație în informațiile despre jurnalele.
Dezavantajele acestei metode:
- Nu trebuie să uităm să inserați informațiile din jurnalul de la orice operațiune.
- În cazul în care inserția de înregistrare jurnal este făcută nu în aceeași tranzacție cu informațiile de inserție, o situație poate apărea atunci când se întâmplă informațiile inserați și informațiile de jurnal nu vor fi reflectate (și invers).
Noi descriem o realizare aproximativă a acestei metode de logare informații.
- ID - primar jurnalul de date câmp.
- DATE_LOG - data și ora conectării.
- TEXT_LOG - jurnal de informații text.
- USERNAME - nume de utilizator.
- CODE_OPER - opcode.
Acum, pentru a introduce informațiile din jurnalul scrie cerere normală pentru informații și inserați numesc într-un program în locuri în care manufacturate insera, șterge sau schimba informații.
Bază de date de logare
Pentru a nu scrie la fiecare pas în caseta de informații despre program în jurnal, vă puteți înscrie într-un alt mod - de a scrie o serie de flip-flops. Pentru a introduce informații - un declanșator pentru a introduce informații pentru a actualiza informațiile - declanșator pentru a actualiza informațiile și pentru a elimina - declanșator pentru a elimina. Deoarece declanșatorul la introducerea, ștergerea și actualizarea informațiilor declanșează automat, nu este nevoie de programare suplimentară în program. Astfel, o dată pe declanșator pentru un tabel de prescriere programator nu-i pasa mai multe despre inserați programarea în jurnal.
Am scrie jurnalul aproximative pentru această implementare.
Trebuie remarcat faptul că o astfel de declanșare creat pentru toate tabelele în cazul în care este necesar să se ia în considerare jurnalele.
Metoda este următoarea surprinde nu numai toate schimbările, dar, de asemenea, surprinde informația în sine.
Logging în baza de date cu păstrarea datelor informatice
Datele de conectare proces este mai complicat decât cel descris mai sus. Ca și în plus față de stocarea informațiilor care au existat unele intervenții chirurgicale, păstrează și chiar informația în sine. Astfel, această metodă necesită o cantitate mai mare de informații decât cele descrise mai sus.
Provocările cu care ne confruntăm în dezvoltarea de software de implementare:
- Tipurile de date în domeniile sunt diferite. Ie nu numai numeric, șir de caractere și data, dar, de asemenea, BLOB.
- De asemenea contabilitate inserare, ștergere sau modificare a informațiilor necesare pentru a ține cont de modificările de asemenea, fiecare domeniu separat. Nu este nevoie de a afișa informațiile pe care nu sa schimbat.
IBExpert utiliza un program pentru a genera jurnalul. Am dezvoltat un model de structură de bușteni corespunzătoare IBExpert:
După cum puteți vedea, modelul este format din 4 tabele:
- IBE $ Log_Tables - operațiuni de masă. În acest tabel, a existat un pas marcat, ce operație la o masă, cât de mult, precum și un utilizator.
- IBE $ Log_Fields - reflectă modificările în informațiile din câmpurile.
- IBE $ Log_Keys - reflectă informațiile din câmpul cheie.
- IBE $ Log_Blob_Fields - reflectă schimbările în domeniile Blob.
Genera un script pentru a crea această structură:
Aceasta este ceea ce am scris doar o structură pentru a stoca informațiile privind conectarea la baza de date.
Acum, avem nevoie pentru a scrie un răspuns la modificările informațiilor. Pentru a face acest lucru, vom proceda ca în metoda descrisă mai înainte - crearea unei serii de flip-flops.
Să presupunem că avem un tabel al unei astfel de structuri:
Crearea unui tabel pentru un anumit declanșator se introduce informațiile în jurnal.
După cum puteți vedea, sa dovedit destul de voluminos de declanșare. Sa întâmplat pentru că luăm în considerare nu doar schimbă întreaga înregistrare, dar fiecare câmp individual.
Acest script poate încerca să introducă manual, dar va dura foarte mult timp.
Pentru a genera jurnalele în IBExpert utilizați comanda Tools -> Protocol manager de date.
Trebuie doar să alegeți operațiunea, care ia în considerare schimbările treaz, și faceți clic pe Compile (F9).
Fiecare metodă de exploatare forestieră are avantajele și dezavantajele sale. Prin urmare, aplicația poate căuta fiecare dintre implementările.
Text jurnalele de caz să se aplice atunci când un program nu funcționează cu baza de date, și nu ar trebui să fie mare.
Logging din program - este recomandabil să se folosească atunci când doriți să inserați în jurnalele de text informații actualizate frecvent, care nu este legată în mod direct cu textul în câmpurile.
Logging în baza de date - o modalitate foarte bună de logare. Este necesar, atunci când este necesar pentru a atinge cele mai mari jurnalele de lucru stablilnosti, dar ai nevoie pentru a crește foarte mult dimensiunea bazei de date.
Logging în baza de date cu păstrarea informațiilor de date - este adecvată atunci când doriți să salvați toate informațiile pe care au fost efectuate operațiuni. Rețineți că, pentru o implementare dată de logare de informații, baza de date va crește puternic. Acest lucru se datorează faptului că toate informațiile sunt stocate, care este înscris în înregistrare, și de câte ori a efectua operațiuni pe ele. Dacă știți de mai înainte, că unele dintre câmpurile din tabel pot deveni foarte mari, este mai bine să nu utilizeze pe acest tabel, această metodă de exploatare forestieră.