pandas to_ sql () ошибка с пустым фреймом данных - PullRequest
1 голос
/ 29 апреля 2020

Я работаю с pandas, чтобы обновить таблицы в базе данных sqlite. Фрейм данных, который я использую, иногда может быть пустым. Когда я использую to_ sql () с этим фреймом данных, у меня возникает sqlite3.OperationalError. Это происходит, когда для параметра задано значение False.

простой пример:

import pandas as pd
import sqlite3 

con = sqlite3.connect("C:\\an_user_dir\\a_base.sqlite")

# error: sqlite3.OperationalError: near ")": syntax error
pd.DataFrame().to_sql('temp', con, if_exists="replace", index=False)

# no error
pd.DataFrame().to_sql('temp', con, if_exists="replace")

Итак, ошибка: sqlite3.OperationalError: near ")": syntax error

Я начал копаться на этой ошибке и обнаружил, что это из-за имени таблицы: "temp". Где-то в pandas или sqlite имя таблицы становится "temp (\n)(\n)", поэтому возникает ошибка.

Это нормальное поведение или фактическая ошибка? Может ли кто-нибудь объяснить мне это?

Спасибо!

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