Как исправить: "sqlite3.OperationalError: Не удалось декодировать в UTF-8" - PullRequest
0 голосов
/ 14 июня 2019

Используя пакет Python sqlite3, я выбираю несколько строк из базы данных sqlite (с тройным внутренним объединением), чтобы поместить их в кадр данных pandas на более позднем этапе.

Я попытался запустить следующий код для выбора из базы данных:

import pandas as pd
import sqlite3

# connect to the database
conn = sqlite3.connect("C:\Quant\Data_Storage2\sqlite\db\scorecard.db")
conn.text_factory = str
c = conn.cursor()

# create pandas df with data from the sqlite db
sql = '''SELECT MACRO_SA.SERIES_ID, MACRO_SA.COUNTRY_ID, MACRO_SA.DATA, 
         MACRO_SA.REL_DATE, HF_DATA.DATA
         FROM MACRO_SA
            INNER JOIN MAP_SERIES ON MAP_SERIES.CUR = MACRO_SA.COUNTRY_ID
            INNER JOIN HF_DATA ON MAP_SERIES.CUR = MACRO_SA.COUNTRY_ID
         WHERE (MAP_SERIES.CRNCY NOT NULL)  
            AND (HF_DATA.SERIES_ID = 'bg_cur')
'''
df_to_adj = c.execute(sql).fetchall()
conn.commit()
df_to_adj = pd.DataFrame(df_to_adj, columns=['SERIES_ID', 'COUNTRY_ID', 'DATA', 'REL_DATE', 'FX_RATE'])

Я получаю следующую ошибку: «sqlite3.OperationalError: Не удалось декодировать в UTF-8». Любая помощь очень ценится.

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