Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak za pomocą PDO mogę się upewnić, że instrukcja UPDATE zakończyła się powodzeniem?

To zależy od tego, co rozumiesz przez „sukces”. Jeśli masz na myśli, że zapytanie zostało wykonane bez błędu, to PDO albo zgłosi wyjątek w przypadku niepowodzenia, albo zwróci FALSE z PDOStatement::execute() , w zależności od ustawionego trybu błędu, więc zapytanie „pomyślne” w tym przypadku będzie po prostu takim, w którym metoda wykonania nie zwróciła FALSE lub zrzuć wyjątek.

Jeśli masz na myśli „powodzenie”, ponieważ faktycznie zaktualizowano wiersze (w przeciwieństwie do zaktualizowanych tylko 0 wierszy), musisz to sprawdzić za pomocą PDOStatement::rowCount() , który poda liczbę wierszy, których dotyczyło poprzednie zapytanie.

Ostrzeżenie:w przypadku aktualizacji, w których newvalue = oldvalue PDOStatement::rowCount() zwraca zero. Możesz użyć

aby wyłączyć to nieoczekiwane zachowanie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nazwa pola mysql ze zmiennej

  2. DETERMINISTIC, NO SQL lub READS SQL DATA w swojej deklaracji i włączone jest logowanie binarne

  3. Funkcja MySQL TRUNCATE() – Obcina liczbę do określonej liczby miejsc dziesiętnych

  4. Usuń zduplikowane rekordy bez tworzenia tabeli tymczasowej

  5. Czy usunięcie tabeli w MySQL powoduje również usunięcie indeksów?