![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.04.2004 Skąd: Legionowo Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Jestem w trakcie tworzenia obiektowego skryptu w php5. Zacząłem od własnego sterownika bazy danych. Napisałem taki kod:
W dwóch sytuacjach użyłem rzucania wyjątków w przypadku błedu (łączenie z bazą i wybieranie bazy). Chciałem też dać obsługe wyjątków do innych funkcji, np. query(), ale jakoś nie wyobrażam sobie później takiego wykonywania zapytań:
Jest jakiś sposób na rzucanie wyjątków, żeby nie trzeba było ich później za każdym razem obsługiwać w kodzie? I czy warto rzucać wyjątki w przypadku takiej funkcji jak query(), lub numRows()? Ten post edytował zbig13 27.03.2006, 07:56:12 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Jest bardzo wiele sytuacji w ktorzych korzystasz z transakcji. Sprzojrz na przyklad:
Kod zapytanie = wstaw do bazy nowa glaerie; if(baza->wykonaj(zaptanie)) { if(!utworz_katalog(strona/katalogi/uzytownik/nowa_galeria)) { // okazalo sie nie nie mogl go utworzyc. zapytanie = usun z bazy wczesniej dodana galerie. if(!baza->wykonaj(zaptanie)) { no i spojnosc danych poszla sie..;) } } } Z wykorzystaniem stansakcji Kod start_transakcji; zapytanie = wstaw do bazy nowa glaerie; if(baza->wykonaj(zaptanie)) { if(!utworz_katalog(strona/katalogi/uzytownik/nowa_galeria)) { // okazalo sie nie nie mogl go utworzyc. abort; } else commit; } commit mozna w zasadzie pominac, bo zazwyczaj w bazie ustawuone jest autocommit i na koncy dane i tak zostana zapisane w bazie. Pozdrawiam. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 02:40 |