Bug #4653 MYSQL_TYPE_LONG corresponding C type should be 'int'
Submitted: 20 Jul 2004 19:42 Modified: 8 Aug 2004 19:14
Reporter: Kent Boortz Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version: OS:
Assigned to: Paul DuBois CPU Architecture:Any

[20 Jul 2004 19:42] Kent Boortz
Description:
On the page 

  http://dev.mysql.com/doc/mysql/en/C_API_Prepared_statement_datatypes.html

MYSQL_TYPE_LONG is documented to have 'long int' as the corresponding C type.
On another place in the manual MYSQL_TYPE_LONG is documented to be 4 bytes.

Most 64 bit systems let 'int' to be 4 bytes and 'long int' to be 8 bytes. The
corresponding C type that is 4 bytes on both 32 bit and 64 bit systems is
then 'int', not 'long int'.

How to repeat:
This is a documentation bug.
[22 Jul 2004 21:24] Konstantin Osipov
The only thing that we can say is that MYSQL_TYPE_LONG is a typecode for 4-byte host language type.
Currently there is no system we have binaries for, where sizeof(int) != 4
So yes, despite that the name is a bit misleading, corresponding C type is int;
long suits only on 32-bit machines.
[8 Aug 2004 19:14] Paul DuBois
Thank you for your bug report. This issue has been addressed in the
documentation. The updated documentation will appear on our website
shortly, and will be included in the next release of the relevant
product(s).