Papub
19.04.2012, 16:52:40
Witam,
mam pewien problem i chiałybym się wam poradzić.
mam akcje która dodaje galerię do bazy danych. W bazie sa 2 tabele. Galeria, galeria_zdjecia. Dodatkowo na serwerze tworzy sie katalog o id = id-nowo-dodanej-galeri.
procedura wyglada tak:
1. dodanie galeri do tabeli galeria
2. wyciagniecie id galeri
3. dodanie zdjec do tabeli galerie_zdjecia
4. Utworzenie katalogu o id = id-nowo-dodanej-galerii
5. Wrzucenie tam zdjeć
jak zrobić żeby po wystąpieniu błedu w którymś z tych punktów np. 3 wycofać 1,2 i nie dopuścić do wykonania 4,5?
Wrzucić te punkty związane z bazą w jedną transakcje?
Pozdrawiam
Crozin
19.04.2012, 18:08:13
Tak, operacje zdecydowanie powinny znaleźć się wewnątrz jednej transakcji. Operacje na plikach również powinny znaleźć się wewnątrz transakcji (systemu plików, nie bazy danych). Google'aj za: filesystem transactions czy database filesystem transactions - powinieneś znaleźć sporo informacji o tym jak łączyć te dwa źródła danych (baza danych, system plików).
Papub
19.04.2012, 18:43:03
Wrzuciłem te zapytania do transakcji. A podczas tworzenia katalogów sprawdzam czy nie wystąpił wcześniej błąd dodawania do bazy danych. Chyba inaczej tego nie przeskoczę. Szukałem o tym database filesystem transaction i nic takiego sensowenego nie znalazłem. Ale dziekuje bardzo za nakierowanie. Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.