ODBC Interface Bug in version 07_01_0005

Поиск
Список
Период
Сортировка
От Mister X
Тема ODBC Interface Bug in version 07_01_0005
Дата
Msg-id GQknO9bSi7citr4T1aZ9FqDWn46C@4ax.com
обсуждение исходный текст
Список pgsql-bugs
Hi,

developing in MFC/Visual Studio 6  I've encountered a strange problem
in last version of ODBC Driver  (actually 07_01_0005). Each time a SQL
error occours, the istructions TRY/ CATCH doesn't report the error
string: the CDBException ' member m_strError is empty
Follows an example:

// MFC C++ Code

CDatabase myDB;

[.....]   // Init and Open database...

//create a table with a WRONG SQL statement:

CString sSQLStatement="CREATE TABLE Dummy (  int DummyID, )";
            // The statement is WRONG beacuse the comma
after the last column definition.

//Executes The statement and catch errors:

TRY
    {
    myDB.ExecuteSQL(sSQLStatement);
    }
    CATCH(CDBException, e)
    {
    AfxMessageBox(e->m_strError);
    }
END_CATCH

Well, with driver version v06-50-0000  i got the string "Error
creating the table; ERROR:  parser: parse error at or near ")", that
it is the correct error message from the back-end.
Instead, with Version  07_01_0005 of the ODBC driver,  the string
e->m_strError is always empty, and the member m_nRetCode of
CDBException class is = -1;
Handling errors with C++ exception is a great thing, i thing this is a
bug of ODBC driver. The only way to discover the SQL errors reported
by the back-end is to analyze the driver connection log, after each
SQLExecute failed istruction, and it is not very very confortable for
the programmer :)

 Thank you.

Silvio.   mister_ics@hotmail.com

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: pg_ctl restart just appends to command line instead of regenerating original cmd
Следующее
От: "David M. Richter"
Дата:
Сообщение: POSTGRES 7.1.2 upgrade on a IRIX 6.4 System