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

Jak używać bloku try-catch dla PDO

Żadna z odpowiedzi tutaj nie jest błędna. Ale w rzeczywistości wszystkie trzy połączone są prawdziwą odpowiedzią. Zdecydowanie powinieneś ustawić

$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

jak powiedział Cerad .

Od teraz każdy pojedynczy problem dotyczący bazy danych jest zgłaszany przez wyjątek typu PDOException . Po prostu nie musisz zgłaszać własnego Exception jak powiedział ladar ponieważ jest bezużyteczny. Po prostu weź ladara kod i przekonwertuj go na

 ...
 $data = array();
 $model = new BlogModel;

    try{
      $model->save(2,'test');
      $data['result']['message'] = 'Settings saved';
      $data['result']['status'] = 'success';
    }catch(PDOException $e){
        $data['result']['message'] = 'Could not save the settings';
        $data['result']['status'] = 'error';
    }

I NIE rzucaj niczego sam.

W takim razie bardzo dobrym sposobem debugowania zapytań PDO jest użycie skryptu catch połączonego z Basic że możesz znaleźć tutaj jeszcze raz.

Łącząc te rzeczy razem, uzyskasz elastyczny, czysty i łatwy w debugowaniu sposób na wyłapanie wszystkich możliwych błędów.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL INSERT SELECT — Zduplikowane wiersze

  2. TEXT vs VARCHAR w InnoDB MySQL 5.5. Kiedy używać każdego?

  3. Używanie SUM() bez grupowania wyników

  4. Usuń z dwóch tabel w jednym zapytaniu

  5. Nic się nie wyświetla po załadowaniu strony