Como Wes diz, read_sql de io / sql fará isso, uma vez que você tenha uma conexão de banco de dados usando uma biblioteca compatível com DBI. Podemos ver dois exemplos curtos usando as bibliotecas MySQLdbe cx_Oraclepara se conectar ao Oracle e ao MySQL e consultar seus dicionários de dados. Aqui está o exemplo para cx_Oracle:
import pandas as pd
import cx_Oracle
ora_conn = cx_Oracle.connect('your_connection_string')
df_ora = pd.read_sql('select * from user_objects', con=ora_conn)
print 'loaded dataframe from Oracle. # Records: ', len(df_ora)
ora_conn.close()
E aqui está o exemplo equivalente para MySQLdb:
import MySQLdb
mysql_cn= MySQLdb.connect(host='myhost',
port=3306,user='myusername', passwd='mypassword',
db='information_schema')
df_mysql = pd.read_sql('select * from VIEWS;', con=mysql_cn)
print 'loaded dataframe from MySQL. records:', len(df_mysql)
mysql_cn.close()