sql >> Database >  >> RDS >> PostgreSQL

Panda's schrijven dataframe naar ander postgresql-schema

Update:vanaf pandas 0.15 wordt schrijven naar verschillende schema's ondersteund. Dan kun je het schema . gebruiken zoekwoordargument:

df.to_sql('test', engine, schema='a_schema')

Schrijven naar verschillende schema's wordt momenteel nog niet ondersteund met de read_sql en to_sql functies (maar er is al een verbeteringsverzoek ingediend:https://github.com/pydata/pandas/issues/7441).

U kunt zich echter voorlopig verplaatsen met behulp van de objectinterface met PandasSQLAlchemy en het verstrekken van een aangepaste MetaData voorwerp:

meta = sqlalchemy.MetaData(engine, schema='a_schema')
meta.reflect()
pdsql = pd.io.sql.PandasSQLAlchemy(engine, meta=meta)
pdsql.to_sql(df, 'test')

Pas op! Deze interface (PandasSQLAlchemy ) is nog niet echt openbaar en zal nog wijzigingen ondergaan in de volgende versie van panda's, maar dit is hoe je het kunt doen voor panda's 0.14.

Bijwerken :PandasSQLAlchemy wordt hernoemd naar SQLDatabase in panda's 0.15.



  1. De provider is niet compatibel met de versie van de Oracle-client

  2. Roep een opgeslagen procedure aan met een andere in Oracle

  3. Alle datums tussen twee datums weergeven

  4. Willekeurige sortering van SQL Server