As of our understanding, The maximum number of columns for any storage engine depends upon the option "AVG_ROW_LENGTH" . If your length of the column name is large, then number of columns will be less and obviously vice-versa also holds true.
The options MAX_ROWS * AVG_ROW_LENGTH will decide the maximum tablesize.
To get the current values, use;
SHOW TABLE STATUS LIKE 'tablename';
Posted in: MySQL