如何用python和sqlalchemy将csv文件上传到新的数据库表中

yrwegjxp  于 12个月前  发布在  Python
关注(0)|答案(1)|浏览(122)

!pip install mysqlclient

import pandas as pd
from sqlalchemy import create_engine

# Step 1: Read the CSV file into a DataFrame
path = "baby_names_2021.csv"
df = pd.read_csv(path)
print(df.shape)  # To check the shape of the DataFrame

# Step 2: Create a connection to the database
username = "username"
password = "piece_of_pork"
hostname = "ssss.mysql.pythonanywhere-services.com"
databasename = "database"

# Create the database engine
engine = create_engine(f'mysql://{username}:{password}@{hostname}/{databasename}')

# Step 3: Upload the DataFrame to the SQL table
df.to_sql('baby_data', engine, if_exists='append', index=False)

NameError: name '_mysql' is not defined
yuvru6vn

yuvru6vn1#

mysqlclient安装有问题。检查你是否有一个可用的轮子为您的操作系统和您的python版本,特别是为Windows。也许你必须从源代码构建库。
查看MySQLdb的常见问题:

ImportError: No module named _mysql  # (or NameError?)

如果您看到这一点,很可能是您在安装MySQLdb时做错了什么;阅读(或阅读)README。_mysql是与MySQL客户端库接口的低级C模块。

编辑

在您的安装目录(例如venv/lib/python-<version>/site-packages/MySQLdb),检查是否有如下文件:

_mysql.cpython-39-x86_64-linux-gnu.so  # Linux / Python 3.9
# OR
_mysql.pypy39-pp73-win_amd64.pyd  # Windows / Python 3.9

相关问题