sql表到pythonDataframe

9vw9lbht  于 2021-07-27  发布在  Java
关注(0)|答案(2)|浏览(298)

我有一个sql数据库,我需要从中分析一个非常大的表。我想用python来实现这一点。
不幸的是,我不能通过python直接访问sql数据库。
对于如何导出表以使用它,有什么建议吗?
我试图导出到sql文件并将其导入到dataframe中,但内存不足。
我尝试使用pymysql直接从python访问数据库

db=pymysql.connect(host="localhost", db="all_data")

但我得到“无法连接到mysql服务器win error 10061”?
文件类型为 .sql .
非常感谢

sycxhyv7

sycxhyv71#

我以前有过这个问题。。。试试这个:


# import libraries

from sqlalchemy import create_engine
import pandas as pd

# set login parameters

db = #enter your database schema name here
user = #enter username to login
pw = #type the password here

# connect to database

engine = create_engine("mysql+pymysql://{user}:{pw}@localhost/{db}"
                        .format(user=user,pw=pw, db=db))

# load data from MySQL into a dataframe

df = pd.read_sql_query("Select * from table", engine)
zpjtge22

zpjtge222#

我很肯定这样的事情会奏效的

import pyodbc
import pandas as pd

conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\Ron\Desktop\testdb.accdb;')

SQL_Query = pd.read_sql_query(
'''select
product_name,
product_price_per_unit,
units_ordered,
((units_ordered) * (product_price_per_unit)) AS revenue
from tracking_sales''', conn)

df = pd.DataFrame(SQL_Query, columns=['field1','field2',...])

你可以在这个链接上看到一个很好的例子:https://datatofish.com/sql-to-pandas-dataframe/

相关问题