Попытка записать файл CSV в таблицу базы данных Oracle с помощью панд - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь записать таблицу в базу данных Oracle, используя панд Python.

Вот мой код:

import cx_Oracle
import pandas as pd
import csv
df = pd.read_csv('C:/Users/admin/Desktop/customer.csv')
conn = cx_Oracle.connect('SYSTEM/Mouni123$@localhost/orcl')
df = df.to_sql('cust', conn, 'if_exists=replace')
conn.close()
df

Я получаю следующую ошибку:

DatabaseError: Execution failed on sql 'SELECT name FROM sqlite_master WHERE type='table' AND name=?;': ORA-01036: illegal variable name/number

Что я делаю не так?

1 Ответ

0 голосов
/ 13 сентября 2018

Ошибка указывает, что ваш код на самом деле пытается экспортировать в базу данных SQLite, которая, как ожидается, потерпит неудачу, если на самом деле целью является база данных Oracle.

Если я правильно понимаю документацию для dataframe.to_sql(), в качестве цели по умолчанию будет использоваться база данных SQLite. Итак, чтобы использовать Oracle в качестве цели базы данных, вы должны сделать это явным образом, используя SQLAlchemy, как описано в документации.

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