PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

PHP i Postgres:łapanie błędów?

Jeśli potrzebujesz wyjątków, musisz użyć PDO.

w przypadku funkcji pg_* i Twojego kodu musisz sprawdzić, czy $result ma wartość false, jeśli tak, to wystąpił błąd.

Możesz uzyskać opis błędu za pomocą pg_last_error()

Coś takiego:

$result = pg_query_params ( $dbconn,
        'DELETE FROM questions
        WHERE question_id = $1',
        array ( $question_id )
    );


if ($result === false) {
    print pg_last_error($dbconn);
} else {
    print 'everything was ok';
}

Tak więc, w zasadzie, za każdym razem, gdy używasz funkcji pg_*, musisz sprawdzić, czy zwrócono wartość false, tak po prostu jest z tymi funkcjami.

Tak, możesz zbudować własne wrappery, więc zamiast pg_query* wywołujesz my_db_query(), która następnie wykonuje sprawdzanie wartości zwracanych i zgłaszanie wyjątków.

Możesz też skorzystać z PDO, które jest w stanie wyrzucić wyjątek PDOException dla wszystkich błędów, które mogą wystąpić.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GroupingError:ERROR:kolumna musi występować w klauzuli GROUP BY lub być używana w funkcji agregującej

  2. PostgreSQL:pomiędzy z datetime

  3. postgresql:INSERT INTO ... (WYBIERZ * ...)

  4. Wyświetlanie i przełączanie baz danych w PostgreSQL

  5. Moje ulubione zapytania PostgreSQL i ich znaczenie