Py学习  »  Python

在Python中使用Psycopg3将CSV复制到PostgreSQL数据库

Caritas • 3 年前 • 1599 次点击  

我在理解正确的语法方面有点困难 psycopg3 Python中的库。我想复制一本书的内容。csv文件进入我的数据库。 The PostgreSQL documentation 表明 copy 应写如下:

COPY table_name [ ( column_name [, ...] ) ]
    FROM { 'filename' | PROGRAM 'command' | STDIN }
    [ [ WITH ] ( option [, ...] ) ]
    [ WHERE condition ]

所以我写了我的python语句如下:

import psycopg


with psycopg.connect('dbname=ideatest user=postgres password=password') as conn: 
        with conn.cursor() as cur:
            mock_idea_info = open(r'C:\dir\filename.csv')
            cur.copy('public.ideastorage FROM C:\dir\filename.csv;')

print('Copy successful.')

问题是脚本打印“复制成功”,但没有将数据插入数据库。不会生成任何错误消息。我复制了文件路径中的\字符,所以这不是问题所在。我一直在寻找解决方案和可能的故障排除方法,但还没有找到任何我理解的相关问题。

另外,我有没有办法通过考试 mock_idea_info 直接进入 复制 陈述

我们将不胜感激。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/133495
 
1599 次点击  
文章 [ 3 ]  |  最新文章 3 年前