Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menulis Pandas DataFrames dengan betul ke MySQL Menggunakan SQLAlchemy?

Bagaimana untuk Menulis Pandas DataFrames dengan betul ke MySQL Menggunakan SQLAlchemy?

Barbara Streisand
Lepaskan: 2024-11-27 22:49:09
asal
244 orang telah melayarinya

How to Correctly Write Pandas DataFrames to MySQL Using SQLAlchemy?

Menggunakan SQLAlchemy dengan MySQL untuk Menulis Pandas DataFrames ke MySQL

Apabila cuba menulis panda DataFrame ke jadual MySQL menggunakan kaedah to_sql sambil beralih daripada sintaks 'flavor='mysql'' yang tidak digunakan kepada enjin SQLAlchemy yang disyorkan pendekatan, pengguna mungkin menghadapi ralat yang serupa dengan:

DatabaseError: Execution failed on sql 'SELECT name FROM sqlite_master
WHERE type='table' AND name=?;': Wrong number of arguments during
string formatting
Salin selepas log masuk

Ralat ini menunjukkan bahawa SQLite sedang digunakan dan bukannya MySQL. Untuk menyelesaikan masalah ini, pastikan penggunaan sambungan SQLAlchemy yang betul dengan MySQL dan khususnya mysql.connector.

Penyelesaian

Ralat boleh diselesaikan dengan menggunakan enjin yang dibuat dengan SQLAlchemy secara langsung sebagai sambungan untuk kaedah to_sql, bukannya mendapatkan sambungan mentah daripada enjin. Berikut ialah kod yang diperbetulkan:

import pandas as pd
import mysql.connector
from sqlalchemy import create_engine

# Create an SQLAlchemy engine
engine = create_engine('mysql+mysqlconnector://[user]:[pass]@[host]:[port]/[schema]', echo=False)

# Read data from the MySQL table
data = pd.read_sql('SELECT * FROM sample_table', engine)

# Write the DataFrame to a new table
data.to_sql(name='sample_table2', con=engine, if_exists='append', index=False)
Salin selepas log masuk

Dengan menggunakan enjin sebagai sambungan, sambungan SQLAlchemy diwujudkan dengan betul dan ralat berkenaan SQLite dihapuskan. Ini membolehkan DataFrame berjaya ditulis ke jadual MySQL.

Atas ialah kandungan terperinci Bagaimana untuk Menulis Pandas DataFrames dengan betul ke MySQL Menggunakan SQLAlchemy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan