【问题标题】:Exporting pandas dataframe to MySQL using SQLAlchemy使用 SQLAlchemy 将 pandas 数据框导出到 MySQL
【发布时间】:2018-07-19 06:29:46
【问题描述】:

我打算使用 SQLAlchemy 将 pandas 数据框导出到 MySQL。尽管参考了所有以前的帖子,但我无法解决问题:

import pandas as pd
import pymysql
from sqlalchemy import create_engine

df=pd.read_excel(r"C:\Users\mazin\1-601.xlsx")

cnx = create_engine('mysql+pymysql://[root]:[aUtO1115]@[localhost]:[3306]/[patenting in psis]', echo=False)

df.to_sql(name='inventor_dataset', con=cnx, if_exists = 'replace', index=False)

以下是错误:

OperationalError: (pymysql.err.OperationalError) (2003, "无法连接 到 'localhost] 上的 MySQL 服务器:[3306' ([Errno 11001] getaddrinfo 失败)”)

【问题讨论】:

  • 可以通过cmd/terminal连接sql数据库吗?
  • @iam.Carrot - 我第一次使用 Python 与 MySQL 交互。我能够从 Python 中的示例 MySQL 表中输入数据作为 pandas 数据框。

标签: python mysql python-3.x sqlalchemy mysql-python


【解决方案1】:

在大量修改代码并探索 Python 中的不同包之后,我能够使代码工作。

代码:

import mysql.connector
import sqlalchemy

database_username = 'root'
database_password = 'mysql'
database_ip       = '127.0.0.1'
database_name     = 'patenting_in_psi'
database_connection = sqlalchemy.create_engine('mysql+mysqlconnector://{0}:{1}@{2}/{3}'.
                                               format(database_username, database_password, 
                                                      database_ip, database_name), pool_recycle=1, pool_timeout=57600).connect()

df22.to_sql(con=database_connection, name='university_dataset_ca', if_exists='append',chunksize=100)
database_connection.close()

【讨论】:

    猜你喜欢
    • 2016-10-04
    • 2018-07-20
    • 1970-01-01
    • 2021-05-04
    • 2014-12-17
    • 1970-01-01
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多