Как изменить SQLITE_MAX_COLUMN в Python? - PullRequest
0 голосов
/ 14 марта 2020

все:

Я пользователь Python, не знакомый с SQLite. Я пытаюсь записать фрейм данных с 3892 столбцами в таблицу SQLite , используя метод dataframe.to_sql(). И Python сказал мне, что есть OperationalError: enter image description here

После того, как Google обнаружил, что встроенный SQLite Python имеет Максимальное количество столбцов по умолчанию 2000 г. в одной таблице. ( Ограничения в SQLite ) На странице сказано:

The default setting for SQLITE_MAX_COLUMN is 2000. You can change it at compile time to values as large as 32767. 

Мой вопрос таков: моя версия SQLite уже собрана и встроена в Python, как я могу изменить настройку по умолчанию max столбцов SQLite в Python?

спасибо

1 Ответ

1 голос
/ 14 марта 2020

Вы не можете изменить это значение, не перекомпилировав SQLite.

Наличие большого количества столбцов, как правило, является плохой формой при проектировании реляционных баз данных. Предполагая, что наличие такого количества столбцов имеет смысл для ваших данных, вам следует рассмотреть возможность использования инструмента, отличного от SQLite, поскольку даже в документации, на которую вы ссылаетесь, упоминается, что в SQLite имеется множество алгоритмов, обеспечивающих квадратичную c производительность (O (N 2). ) для N столбцов).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...