sql >> データベース >  >> RDS >> PostgreSQL

DataFrameをpostgresテーブルに書き込む方法は?

    pandas 0.14(2014年5月末にリリース)以降、postgresqlがサポートされています。 sql モジュールはsqlalchemyを使用するようになりました さまざまなデータベースフレーバーをサポートします。 postgresqlデータベースのsqlalchemyエンジンを渡すことができます(ドキュメントを参照)。例:

    from sqlalchemy import create_engine
    engine = create_engine('postgresql://username:[email protected]:5432/mydatabase')
    df.to_sql('table_name', engine)
    

    バージョン0.13.1までのパンダではpostgresqlがサポートされていなかったのは正しいです。古いバージョンのパンダを使用する必要がある場合は、パッチを適用したバージョンのpandas.io.sqlを次に示します。 :https://gist.github.com/jorisvandenbossche/10841234。
    これは少し前に書いたので、常に機能することを完全に保証することはできませんが、基本はそこにあるはずです)。そのファイルを作業ディレクトリに置いてインポートすると、次のことができるようになります(con postgresql接続です):

    import sql  # the patched version (file is named sql.py)
    sql.write_frame(df, 'table_name', con, flavor='postgresql')
    


    1. 別のSELECTから返された行数でORDERBYを照会する

    2. C#コードからSQL Serverストアドプロシージャにステップインするにはどうすればよいですか?

    3. Pythonpsycopg2がpostgresqlテーブルに挿入されていません

    4. SQL Server(T-SQL)で2つのパーティションを1つにマージする