OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
Re: C api - mysql_list_fields

From: Simon J Mudd (sjmuddpobox.com)
Date: Tue Oct 07 2008 - 05:44:45 CDT


mysqlaubit.com (Mike Aubury) writes:

> I'm probably being a bit stupid - but I'm trying to determine (in code) the
> length of the string in the schema for a given table.
>
> So - for example :
>
>
> create table a (
> blah char(20)
> )
>
>
> I want to return '20', but I'm getting '60' when I use mysql_list_fields..
> (Always seems to be 3x longer that I'm expecting)...
>
> Am I missing something ? (or should I just divide by 3!!)

Is the table or database using UTF-8? I think that if it is MySQL will
allocate space for each character and is forced to allocate 3x20 bytes
as a UTF-8 character can be up to 3-bytes in length. SHOW CREATE
TABLE a\G should show if this is the case.

Simon

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql