SELECT `information_schema` . `COLUMNS` . `TABLE_SCHEMA` AS `table_schema` , `information_schema` . `COLUMNS` . `TABLE_NAME` AS `table_name` , `information_schema` . `COLUMNS` . `COLUMN_NAME` AS `column_name` , `information_schema` . `COLUMNS` . `DATA_TYPE` AS `data_type` , `information_schema` . `COLUMNS` . `COLUMN_TYPE` AS `column_type` , ( `locate` ( ? , `information_schema` . `COLUMNS` . `COLUMN_TYPE` ) = ? ) AS `is_signed` , ( `locate` ( ? , `information_schema` . `COLUMNS` . `COLUMN_TYPE` ) > ? ) AS `is_unsigned` , ( ( CASE `information_schema` . `COLUMNS` . `DATA_TYPE` WHEN ? THEN ? WHEN ? THEN ? WHEN ? THEN ? WHEN ? THEN ? WHEN ? THEN ? END ) >> IF ( ( `locate` ( ? , `information_schema` . `COLUMNS` . `COLUMN_TYPE` ) > ? ) , ?, ... ) ) AS `max_value` , `information_schema` . `TABLES` . `AUTO_INCREMENT` AS `auto_increment` , ( `information_schema` . `TABLES` . `AUTO_INCREMENT` / ( ( CASE `information_schema` . `COLUMNS` . `DATA_TYPE` WHEN ? THEN ? WHEN ? THEN ? WHEN ? THEN ? WHEN ? THEN ? WHEN ? THEN ? END ) >> IF ( ( `locate` ( ? , 