=?iso-8859-2?q?firebird_i_triggery_-_logowanie_historii_zmian_zawarto=B6ci?=
Marcin - 03-02-2007 00:02
=?iso-8859-2?q?firebird_i_triggery_-_logowanie_historii_zmian_zawarto=B6ci?=
Witajcie Bardzo proszę o pomoc w może dla niektórych prostej sprawie. Do tej pory logowałem zmiany poszczególnych rekordów w tabelach na zasadzie przekopiowania bieżącej zawartości rekordu do innej tabeli przy aktywacji triggera before update. Działa to dość sprawnie, ale ma jedną wadę należy do obsługi każdego triggera tworzyć osobną procedurę. Pomyślałem więc że można to zrobić w sposób bardziej uniwersalny a mianowicie chodzi aby można wywoływać z poziomu triggera procedurę która będzie zawierała 2 parametry nazwę tabeli źródłowej oraz wskaźnik rekordu który jest zmieniany. Sama procedura miała by za zadanie pobranie ilości pól w tabeli i przepisanie ich zawartości do tabeli przechowującej historię zmian. I właśnie moja prośba tyczy pomocy przy stworzeniu takiej uniwersalnej procedury. Do tej pory do każdego triggera mam osobną procedurę i to działa ale gdy zmieniam strukturę muszę również pamiętać o zmianach procedur logujących zmiany.
Pozdrawiam Marcin
sg - 03-02-2007 00:02
Dnia 02-02-2007 o 21:59:32 Marcin <alladyn14@alejazda.pl> napisał(a):
> Witajcie > Bardzo proszę o pomoc w może dla niektórych prostej sprawie. Do tej > pory logowałem zmiany poszczególnych rekordów w tabelach na zasadzie > przekopiowania bieżącej zawartości rekordu do innej tabeli przy > aktywacji triggera before update. > Działa to dość sprawnie, ale ma jedną wadę należy do obsługi każdego > triggera tworzyć osobną procedurę. > Pomyślałem więc że można to zrobić w sposób bardziej uniwersalny a > mianowicie chodzi aby można wywoływać z poziomu triggera procedurę > która będzie zawierała 2 parametry nazwę tabeli źródłowej oraz > wskaźnik rekordu który jest zmieniany. Sama procedura miała by za > zadanie pobranie ilości pól w tabeli i przepisanie ich zawartości do > tabeli przechowującej historię zmian. I właśnie moja prośba tyczy > pomocy przy stworzeniu takiej uniwersalnej procedury. > Do tej pory do każdego triggera mam osobną procedurę i to działa ale > gdy zmieniam strukturę muszę również pamiętać o zmianach procedur > logujących zmiany. > > Pozdrawiam > Marcin >
Ale możesz napisać prodedurę, która odczyta sobie nazwy wszystkich tabel, sprawdzi ich triggery i jeśli nie ma triggera to go stworzy dla tej konkretnej tabeli. Możesz sobie ustawić, żeby to były triggery (oczywiście after), ale na pozycji 99, więc na nic nie będą wpływać. Tak działa oprogramowanie do replikacji. Trigger dla każdej tabeli + 3 tabele do logowania zmian.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Wydajność baz danych w zależności od poziomu izolacji ANSI/ISO
Czy zna (obsługuje) ktoś program Iso Draw ?
MYSQL - kodowanie w ISO-PL
strona plus baza w iso do utf-8
Kodowanie: z iso na utf
Konwesja znaków w dump'ie bazy danych - ISO -> utf-8 -> ISO -> utf-8
=?iso-8859-2?q?Co_oznacza_b=B3=B1d_Warning:_mysql=5Fconnect() _[function.mysql-connect]:_Can't_connect_to_local_MySQL_server_through_sock et_'/var/run/mysqld/mysqld.sock'_(2)_in?=
=?iso-8859-2?q?Informatyka,_Java,_EJB,_Ajax,_Spring=2E_Czy=BF by_to_koniec_=B6wiata,_czy_te=BF_nasze_uczelnie_b= EAd=B1_uczy=B3y_w_ko=F1cu!_czego_praktycznego_=2E= 2E=2E=2E?=
=?iso-8859-2?q?Ati_Mobility_Radeon_X300_W_Notebooku_Jak_Zwi=E Akszy=E6_Ilo=B6=E6_Grafiki_Poprzez_Wsp=F3=B3dziele nie_Z_Ramu=3F=3F=3F?=
Firebird - zmiana NULL na NOT NULL
zanotowane.pldoc.pisz.plpdf.pisz.plnawschodzie.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|