When length of text data is 1. - Mailing list pgsql-odbc

From НФСР
Subject When length of text data is 1.
Date
Msg-id 015a01c6fc4f$f36164a0$39a7fea9@samatov
Whole thread Raw
Responses Re: When length of text data is 1.
List pgsql-odbc
Hello,

I tried to search in Internet, but didn't find answer...
I'm using PostgreSQL 8.1.5-1, ODBC, MS Visual C++ with MFC, I'm using
Unicode (database has UTF8 encoding and I'm using "PostgreSQL Unicode" odbc
driver).
I create, for example, such table:

***code***
CREATE TABLE section (
     idsection INT PRIMARY KEY,")
     idparent INT NULL REFERENCES section ON DELETE CASCADE,")
     name TEXT NOT NULL")
    );
**********

Retrieve data thereby:

***code***
CRecordset rcrd(&db);
CString nm;
....
rcrd.GetFieldValue(_T("name"),nm);
**********

It works without any problem except when length of 'name' is 1.
For example, It works fine when name is 'John' but when name is 'J' line
    rcrd.GetFieldValue(_T("name"),nm);
throws exception with empty exception message and AFAIK with return code
SQL_NO_DATA.
If I catch exception, nm equals 'J', but when application exits, Memory
Leaks is detected.
And I think, catching exception and then checking emptyness of exception
message is not good solution...

So, question...
Is this bug in my code or in MFC code or in ODBC driver's code?
What I should do to support strings with length == 1?
Thank you if you can help me..


Best regards,
Nail Samatov


pgsql-odbc by date:

Previous
From: Hiroshi Inoue
Date:
Subject: Re: Driver doesn't work without --enable-pthreads
Next
From: BeemerBiker
Date:
Subject: try .. catch .. not working like I expected