SQLAlchemy の to_sql メソッドを使用して MySQL に Pandas データフレームを書き込む
この質問は、SQLAlchemy の to_sql を使用して MySQL テーブルに Pandas データフレームを書き込むという課題に対処します。方法。ユーザーは、古い「flavor='mysql」構文を使用しようとしたときにエラーが発生し、SQLAlchemy エンジンの使用に移行したいと考えていました。
正しいアプローチは、SQLAlchemy の create_engine 関数を使用して、への接続を確立することです。 mysql mysqlconnector 方言を使用した MySQL データベース。この接続は、con パラメータとして to_sql メソッドに渡す必要があります。
import pandas as pd from sqlalchemy import create_engine engine = create_engine('mysql+mysqlconnector://[user]:[pass]@[host]:[port]/[schema]', echo=False) data.to_sql(name='sample_table2', con=engine, if_exists='append', index=False)
最初、ユーザーは raw_connection() メソッドを使用して接続を取得しようとしましたが、試行を示すエラーが発生しました。 MySQL の代わりに SQLite を使用します。エンジン オブジェクトを con 引数として直接指定することで、この問題は解決されました。
import pandas as pd from sqlalchemy import create_engine data.to_sql(name='sample_table2', con=engine, if_exists='append', index=False)
エンジン オブジェクトにカーソル属性がないため、ユーザーがエンジンを con 引数として渡そうとしたときにも AttributeError が発生しました。 create_engine 関数を利用して MySQL 接続を確立すると、適切な接続オブジェクトが提供され、to_sql メソッドが正常に実行できるようになります。
以上がSQLAlchemy の `to_sql` メソッドを使用して Pandas DataFrame を MySQL に書き込む方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。