ODBC driver issue

Started by Igor Korotover 8 years ago4 messagesgeneral
Jump to latest
#1Igor Korot
ikorot01@gmail.com

Hi,
I'm testing my program and got an interesting issue.

I have an OSX 10.8 with iODBC manager and PostgreSQL ODBC driver.

When I tried to query the database table with the column "char(129)" I get:

"My field text "

(the text with the bunch of spaces at the end).

The driver is not the current one - but I don't remember the version.

Is this known issue? Maybe its already fixed with the latest ODBC driver?

Thank you.

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#2John R Pierce
pierce@hogranch.com
In reply to: Igor Korot (#1)
Re: ODBC driver issue

On 7/26/2017 7:25 PM, Igor Korot wrote:

When I tried to query the database table with the column "char(129)" I get:

"My field text"

(the text with the bunch of spaces at the end).

The driver is not the current one - but I don't remember the version.

Is this known issue? Maybe its already fixed with the latest ODBC driver?

a char(129) field is 129 characters long, and will always be padded with
spaces to that length.

maybe you wanted a varchar (aka char varying) ? these are variable
length and return just what you put in them.

--
john r pierce, recycling bits in santa cruz

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#3Igor Korot
ikorot01@gmail.com
In reply to: John R Pierce (#2)
Re: ODBC driver issue

Hi, John,

On Wed, Jul 26, 2017 at 11:08 PM, John R Pierce <pierce@hogranch.com> wrote:

On 7/26/2017 7:25 PM, Igor Korot wrote:

When I tried to query the database table with the column "char(129)" I
get:

"My field text"

(the text with the bunch of spaces at the end).

The driver is not the current one - but I don't remember the version.

Is this known issue? Maybe its already fixed with the latest ODBC driver?

a char(129) field is 129 characters long, and will always be padded with
spaces to that length.

maybe you wanted a varchar (aka char varying) ? these are variable length
and return just what you put in them.

With the char(), is there a "Standard SQL" way to do trimming?

Thank you.

--
john r pierce, recycling bits in santa cruz

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#4John R Pierce
pierce@hogranch.com
In reply to: Igor Korot (#3)
Re: ODBC driver issue

On 7/26/2017 9:06 PM, Igor Korot wrote:

With the char(), is there a "Standard SQL" way to do trimming?

trim(trailing from fieldname)

but really, if you want a variable length string without padding, don't
use CHAR() as a data type. use VARCHAR or TEXT.

--
john r pierce, recycling bits in santa cruz

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general