pythonpandassqlalchemy

Pandas to_sql doesn't insert any data in my table


I am trying to insert some data in a table I have created. I have a data frame that looks like this:

dataframe

I created a table:

create table online.ds_attribution_probabilities
(
attribution_type text,
channel text,
date date ,
value float
)

And I am running this python script:

engine = create_engine("postgresql://@e.eu-central-1.redshift.amazonaws.com:5439/mdhclient_encoding=utf8")
connection = engine.raw_connection()
result.to_sql('online.ds_attribution_probabilities', con=engine, index = False, if_exists = 'append')

I get no error, but when I check there are no data in my table. What can be wrong? Do I have to commit or do an extra step?


Solution

  • Try to specify a schema name:

    result.to_sql('ds_attribution_probabilities', con=engine, 
                  schema='online', index=False, if_exists='append')