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.