Page 1 of 1
SHOW FULL COLUMNS on MySQL 8 returns 'blob' for 'Type' and 'Default'
Posted: Mon 29 Oct 2018 14:50
by upscene
Hi there,
Is there any reason why the latest version of MyDAC returns BLOBs for the columns 'type' and 'default' if I issue a SHOW FULL COLUMNS-statement?
These used to be returned as (var)char.
With regards,
Martijn Tonies
Re: SHOW FULL COLUMNS on MySQL 8 returns 'blob' for 'Type' and 'Default'
Posted: Fri 02 Nov 2018 14:15
by ViktorV
This behavior is correct. The fields are created based on the information sent by the MySQL server and if the server returns a BINARY flag for a field of the MYSQL_TYPE_BLOB type, a field of the ftBLOB type will be created. For TYPE and DEFAULT fields, the MySQl 8 server will return a BINARY flag and MYSQL_TYPE_BLOB field.
You can use Data Type Mapping for the needed columns. For example:
Code: Select all
MyQuery.DataTypeMap.AddFieldNameRule('Type', ftString);
MyQuery.DataTypeMap.AddFieldNameRule('Default', ftString);
Re: SHOW FULL COLUMNS on MySQL 8 returns 'blob' for 'Type' and 'Default'
Posted: Mon 05 Nov 2018 08:19
by upscene
For TYPE and DEFAULT fields, the MySQl 8 server will return a BINARY flag and MYSQL_TYPE_BLOB field
In MySQL Workbench, using a MySQL 8 database, 'type', 'default' and 'comment' is listed as TEXT, not as a binary BLOB, with charset utf8mb4.
In version 5.7, these are returned as TEXT, 'comment' is returned as VARCHAR, all with char set utf8.
How come you're returning it as a binary blob?
Re: SHOW FULL COLUMNS on MySQL 8 returns 'blob' for 'Type' and 'Default'
Posted: Wed 07 Nov 2018 09:15
by ViktorV
Thank you for the information. We have reproduced the issue and it will be fixed in the next build.
Re: SHOW FULL COLUMNS on MySQL 8 returns 'blob' for 'Type' and 'Default'
Posted: Wed 07 Nov 2018 10:04
by upscene
Hello Viktor,
That's good to hear - looking forward to it.
Re: SHOW FULL COLUMNS on MySQL 8 returns 'blob' for 'Type' and 'Default'
Posted: Wed 07 Nov 2018 14:10
by ViktorV
Thank you for the interest to our product.
Feel free to contact us if you have any further questions about our products.