Python–将 CSV 导入 PostgreSQL
原文:https://www . geesforgeks . org/python-import-CSV-into-PostgreSQL/
在本文中,我们将看到如何使用 Python 包 psycopg2 将 CSV 文件导入 PostgreSQL。
首先,我们导入 psycopg2 包,并使用 pyscopg2.connect() 方法建立到 PostgreSQL 数据库的连接。在导入 CSV 文件之前,我们需要创建一个表。在下面的例子中,我们通过使用 cursor.execute() 方法执行“创建表”SQL 命令来创建一个表。
'''CREATE TABLE DETAILS(employee_id int NOT NULL,
employee_name char(20),
employee_email varchar(30),
employee_salary float);'''
空表视图:
表格描述
创建表后,我们需要在 SQL 表单中执行“复制”命令。在 copy 命令中,我们需要指定 CSV 文件的路径。
使用的 CSV 文件:
使用的 CSV 文件
'''COPY table_name
FROM 'C:\folder\file.csv'
DELIMITER ','
CSV HEADER;'''
下面是实现:
Python 3
import psycopg2
conn = psycopg2.connect(database="EMPLOYEE_DATABASE",
user='postgres', password='pass',
host='127.0.0.1', port='5432'
)
conn.autocommit = True
cursor = conn.cursor()
sql = '''CREATE TABLE DETAILS(employee_id int NOT NULL,\
employee_name char(20),\
employee_email varchar(30), employee_salary float);'''
cursor.execute(sql)
sql2 = '''COPY details(employee_id,employee_name,\
employee_email,employee_salary)
FROM '/private/tmp/details.csv'
DELIMITER ','
CSV HEADER;'''
cursor.execute(sql2)
sql3 = '''select * from details;'''
cursor.execute(sql3)
for i in cursor.fetchall():
print(i)
conn.commit()
conn.close()
输出:
(1, 'rajesh ', 'rajesh89@gmail.com', 60000.0)
(2, 'pratyusha ', 'praty@gmail.com', 75000.0)
(3, 'pratibha ', 'pratibhaJ@gmail.com', 65000.0)
版权属于:月萌API www.moonapi.com,转载请注明出处