![]() |
![]() |
-Code46- |
![]()
Post
#1
|
Goście ![]() |
Witam!
Wkońcu natrafiłem na problem dotyczący kasowania danych z bazy mysql. Temat dotyczy bardziej bazy niż php ale mam nadzieję, że mi pomożecie.. Mam kilka tabel. Kasując informacje z jednej, muszę usunąć odpowiednie dane z innych tabeli. Wiem, że instrukcji DELETE nie można użyć tak jak select. Dla każdej tabeli należy wywołać osobno instukcję DELETE. Poczytałem sobi o trancakcjach i blokowaniu ale nie wiem jak to zastosować w praktyce. Chodzi mi o to, że gdy skasuję z tablei kont użytkownika, a z drugiej tabeli (tam gdzie mam dane o użytkownikach) nie uda się skaować odpowiedniego wpisu (np z nieznanych przyczyn) to tabelę z kontami doprowadzę do stanu z przed wykonani instrukcji DELETE, po to aby baza się nie posypała. Jak to zrobić? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Cytat Moim zdaniem to jest trochę tak od "pupy strony". Nie przemyślane. Lepiej samemu wykonać 2x indstrukcje DELETE niż raz ale od tylca. Co Ty o tym myślisz? No calkowicie sie zgadzam z tym, poprostu nie masz kontroli nad tym wszystkim. Albo usuniesz cos a tu poszly Ci inne rekordy ktorych nie chciales usunac. Cytat Jak sprawdzić i zrobić obsługę wyjątku: Jeśli pierwsze zapytanie się nie uda to cofam transakcje i powiadamiam użytkownika. Jeśli pierwsze się uda a drugie zapytanie się nie uda to cofam transakcje i powiadamiam użytkownika. Jeśli pierwsze zapytanie się udało i drugie też to zapisuję transakcję.. NO wlasnie tak. Ewentualnie mozesz dodac przetwazanie bledow z bazy. Ale to juz zalezy od specyfikacji aplikacji i projektu. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.10.2025 - 13:14 |