Приведенный ниже код обычно дает мне результаты запроса данных, кроме этого времени ...
def oracle(user, pwd, dsn, sql, columns):
# Connection to databases
con = cx_Oracle.connect(user=user, password=pwd, dsn=dsn, encoding="UTF-8")
cur = con.cursor()
# Check Connection
print('Connected')
# Create DF
df = pd.DataFrame(cur.execute(sql).fetchall(), columns= columns , dtype = 'str')
print('Shape:', df.shape)
return df
Ниже приведена ошибка.
ValueError Traceback (most recent call last)
<timed exec> in <module>
<timed exec> in oracle_aml(user, pwd, dsn, sql)
<timed exec> in oracle(user, pwd, dsn, sql, columns)
ValueError: year -7 is out of range
Вопрос: Как я могу преодолеть это предупреждение? Это говорит о том, что для некоторых столбцов даты значение = -7. Это связано с ошибкой в DB.
Я подумал добавить следующее выражение, чтобы игнорировать типы столбцов, но это не очень полезно.
dtype = 'str'
Спасибо всем, кто помогает!