Прервано (сброшено ядро) в кодовых блоках PQconnectdb C ++

У меня есть такой код для моего плагина codeblocks:

 conn = PQconnectdb("dbname=codeblocks user=postgres password=postgres host=127.0.0.1 port=5432");

if(PQstatus(conn) != CONNECTION_OK) {
wxMessageBox(_("Database connection failed!" ));
PQfinish(conn);
return 0;
}

При этом произойдет ошибка соединения с базой данных, так как она не существует и «Сбой соединения с базой данных!» сообщение появится
Моя проблема в том, что он закрывает IDE Codeblocks и показывает ошибку в моем терминале, например:

Exception: Unknown exception was raised. The application will terminate immediately...
Aborted (core dumped)

Как я могу поймать ошибку на PQconnectdb, чтобы он не закрыл мою IDE? Кстати, я в Ubuntu 14.04 и с использованием C ++.

0

Решение

Сначала вы можете включить свой обвинительный код в try-catch:

try{
conn = PQconnectdb("dbname=codeblocks user=postgres password=postgres host=127.0.0.1 port=5432");

if(PQstatus(conn) != CONNECTION_OK) {
wxMessageBox(_("Database connection failed!" ));
PQfinish(conn);
return 0;
}
} catch (...) {
/* add breakpoint here */
}

Кроме того, вы можете проверить, установили ли вы более одной версии кодовых блоков.

  • БД существует?
  • Postgresql установлен?
  • Используете ли вы правильный хост и / или порт?
0

Другие решения


По вопросам рекламы [email protected]