This is a read-only copy of the MariaDB Knowledgebase generated on 2024-11-15. For the latest, interactive version please visit https://mariadb.com/kb/.

What is the maximum number of columns in any engine?

Hello.

This is not a duplicate as much as a recap. This question was asked more than 7 years ago and at the time the answer was inconclusive and non-committal. MariaDB has a wide range of engines and I can't try them all.

Online questions similar to this are constantly referred to MySQL documentation, which often proves insufficient. For instance, a max of 4096 is constantly put forward, BUT <list of excuses not to get there>.

I am not looking for StackOverflow typical "why would you..." answers. I tried InnoDB (default), Aria and MyISAM, always hitting on "ERROR 1117 (HY000): Table definition is too large".

I have a pandas DataFrame with almost 2200 columns (and growing). The type summary is the following:

     91  BIGINT,
      1  BOOL,
   2045  FLOAT(53),
     16  TEXT,

and the size is as follows:

>>> df.iloc[0].memory_usage(index=False)
17232

What are my options?

Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.