我在尝试通过Python将新行插入Postgres数据库时遇到麻烦。使用Psycopg2库,我发现期望的代码如下所示。
我尝试将所有元素排序为元组,然后将其全部格式化为单个字符串。但是格式化显然无法正常工作。我也尝试将它们分离,如代码中所示,但是我得到的错误是:
索引805处不受支持的格式字符'd'(0x64)
我已经检查了要插入的数据库结构,并且格式一致,这意味着我没有在数字中插入字符串,反之亦然。
my_query = ('INSERT INTO public.ad_performance (account, adgroupid, adtype,'
'campaignid, adid, ad) VALUES'
'(%s, %d, %s, %d, %d, %r)')
cur.execute(my_query, (account[i], adgroupid[i], adtype[i], campaignid[i], adid[i], False))
conn.commit()
我希望插入能够成功插入我的行,但无济于事。 这是产生的输出示例(打印我要插入的内容):
('INVERSION', 3681.0, 'ad-3', 201513041, 28.0, False)