Иттер из некоторого соединения ODBC с таблицей панд без CSV
У меня есть некоторая базовая информация в панде DataFrame. Мне нужно соединить его с некоторыми справочными таблицами, к которым у меня есть доступ через соединение pyodbc. Есть ли способ получить набор результатов sql в DataFrame pandas без предварительной записи результата в CSV?
Просто кажется лишним тратить этот дополнительный шаг в CSV и в DataFrame.
1 ответ
Решение
Я получил pyodbc
работать с моим SQL Server
Затем, с некоторой помощью из этого потока, я получил возврат SQL для загрузки кадра данных.
Я уже настроил pyodbc
связи, затем позвонил ему.
import pyodbc
import pandas.io.sql as psql
cnxn = pyodbc.connect(your_connection_info)
cursor = cnxn.cursor()
sql = ("""SELECT * FROM Source""")
df = psql.frame_query(sql, cnxn)
cnxn.close()
df
должен вернуть ваш фрейм данных сейчас. Самое сложное для меня было получить pyodbc
и работает - я должен был использовать freetds
и потребовалось много проб и ошибок, чтобы заставить его работать.