[php][mysql] Wiele zapytań sql - jedno po drugim. Ja kto wykonać? |
[php][mysql] Wiele zapytań sql - jedno po drugim. Ja kto wykonać? |
11.08.2017, 14:03:25
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(); |
|
|
11.08.2017, 14:12:43
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6297 Dołączył: 27.12.2004 |
Ustaw PDO w tryb EXCEPTION to zacznie rzucac wyjatkami. Na chwile obecna nie rzuca
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
11.08.2017, 15:16:06
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 Generowanie wyjątków włączałe mna dwa sposoby, jednak nie pokazuje mi nic
I drugi sposób
jednak nie wyświetlajami się wyjątki. Ten post edytował luis2luis 11.08.2017, 15:20:15 |
|
|
11.08.2017, 15:45:00
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 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.
-------------------- |
|
|
11.08.2017, 15:52:03
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. |
|
|
11.08.2017, 15:55:22
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Aby wykonać wiele zapytań potrzebujesz emulated prepares ale poczytaj o bezpieczeństwie tego.
-------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 20:46 |