熊猫数据框到Postgres表转换不起作用

时间:2019-03-06 23:37:48

标签: python pandas postgresql psycopg2

我正在将一个csv文件转换为Pandas数据帧,然后将其本质上转换为Postgres表。

问题是我可以在Postgres中创建一个表,但是查询时却无法从表中选择列名。

这是我的示例代码:

import pandas as pd
from sqlalchemy import create_engine
import psycopg2
engine = create_engine('postgresql://postgres:pwd@localhost:5432/test')

def convertcsvtopostgres(csvfileloc, table_name, delimiter):
    data = pd.read_csv(csvfileloc, sep=delimiter, encoding='latin-1')

    data.head()
    data1 = data.rename(columns=lambda x: x.strip())

    data1.to_sql(table_name, engine, index=False)

convertcsvtopostgres("Product.csv","t_product","~")

我可以做一个select * from test.t_product;,但我做不到select product_id from test.t_product;

我不确定是否由于文件的编码和转换而发生这种情况。有什么办法解决这个问题,因为我不想每次都指定表结构。

0 个答案:

没有答案