![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Potrzebuje wykonać kilka operacji SQL, jedna po drugiej. Chodzi o czyszczenie bazy danych i ustawianie nowych użytkowników po czyszczeniu. Problmeme jest to, że tych zapytyańjest około 80. Kod wyglada tak:
Problemem jest to, że jak się zmieni struktura bazy danych i jakiś zapytanuie w trakcie jest nieporpawne, to dalsze już się nie wykonują :/ Jak można to rozwiązać, żeby mimo niepoprawnego błędnego zapyutania, żeby PDO zwracało mi nomunikat z błędem ale leciało dalej i wykonywało reszte zapytan? Zauważyłęm też, że mimo, że niektóre zapyutania się nie wykonuja np widziałem że nie wykonało sięczęść insertów, to nie dostalem żadnego komunikatu a mam raportowanie na E_ALL + jest echo echo $e->getMessage(); |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ustaw PDO w tryb EXCEPTION to zacznie rzucac wyjatkami. Na chwile obecna nie rzuca
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) ![]() ![]() |
Ustaw PDO w tryb EXCEPTION to zacznie rzucac wyjatkami. Na chwile obecna nie rzuca Dziękuje dobra duszo za pomoc, nie wiedziałem, że trzeba takie raportowanuie właczać, kłania się brak doświadczenia w PDO (IMG:style_emoticons/default/smile.gif) Generowanie wyjątków włączałe mna dwa sposoby, jednak nie pokazuje mi nic (IMG:style_emoticons/default/sad.gif)
I drugi sposób
jednak nie wyświetlajami się wyjątki. Ten post edytował luis2luis 11.08.2017, 15:20:15 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Pierwszy sposób jest ja najbardziej poprawny. Skoro się nie wyświetliły to znaczy że nie było wyjątku.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) ![]() ![]() |
Pierwszy sposób jest ja najbardziej poprawny. Skoro się nie wyświetliły to znaczy że nie było wyjątku. Specjalnie dodałem zapyutabniue DELETE FROM i tabela któej nie ma w bazie, więc powionien się wyświetlic wyjątek. Zastanawiam się, czy kawałek kodu Jest odpowiedni.:
Jeszcze jedno Czy zmienną:
Można jakoś bezpiecznie rozbić, żeby każde zapytanie wykonać oddzielnie i żeby jedne błąd nie wstrzytmywał wszystkiego? myslałem o explode() ale nie wiem jak z wydajnością tego mechanizmu oraz co jeżeli gdzieś w będzie znak ; po którym bym rozbijał. To jest coś na zasadzie wczytrywania dumpa bazy danych. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Aby wykonać wiele zapytań potrzebujesz emulated prepares ale poczytaj o bezpieczeństwie tego.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.09.2025 - 17:33 |