Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL

转眼我们【Python办公自动化之PostgreSQL篇】已经到了最后一篇了——【写入】篇了

今天写入讲完,我们3篇就结束啦!

三篇分别是(点击可查看):1、安装篇;2、导入&读取篇;3、以及今天的写入篇

1、首先我们在桌面随便新建一个测试Excel

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第1张图片

2、我们利用pandas读取表格,将每一行读取成列表

这个非常简单!

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第2张图片

代码:

安装库:pip install pandas

import pandas as pd

df = pd.read_excel("./test.xlsx",dtype=str,keep_default_na='')
for d in df.values.tolist():
    print(d)

3、我们要在PostgreSQL数据库中创建一张表,用来存放刚刚Excel中的数据

一般我们创建表都会用数据库语言,但是太麻烦了!!我们利用一个最方便的方法!!

这也是为什么选择Navicat的原因!!

①首先我们把刚刚的创建的Excel,表头单独复制出来,存在桌面!

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第3张图片

②先右击,再点击导入

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第4张图片
Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第5张图片

改个名字:

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第6张图片

类型长度都可以改,这里直接下一步!

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第7张图片

一路下一步,点击关闭

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第8张图片

大功告成!

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第9张图片

上述步骤等于下述代码:我只是太懒了,实在不想写,万一字段超级多咋办,所以还是刚刚的步骤最方便!!

CREATE TABLE students (
  name VARCHAR(50),
  student_id INT,
  gender VARCHAR(10),
  grade FLOAT
);

4、 写入PostgreSQL

注意事项: sql = 'insert into 插入测试表 values (%s,%s,%s,%s);'# 切记,有多少个(列)表头,就有多少个 %s 占位符

代码:

import pandas as pd
import psycopg2

conn = psycopg2.connect(
    host="localhost",
    database="sf",
    user="postgres",
    password="123456"
)
cur = conn.cursor()
print("连接成功!!")

df = pd.read_excel("./test.xlsx", dtype=str, keep_default_na='')
for d in df.values.tolist():
    print(d)
    sql = "INSERT INTO student VALUES (%s, %s, %s,%s)"
    cur.execute(sql, tuple(d))

conn.commit()
print("插入成功!")
conn.close()
print("连接关闭!!")

视频展示:

Python办公自动化之PostgreSQL篇3——利用Python读取一张表写入PostgreSQL_第10张图片

希望对大家有帮助

致力于办公自动化的小小程序员一枚

致力于写出清楚的博客

都看到这了,关注+点赞+收藏=不迷路!!

如果你想知道更多关于Python办公自动化的知识点请务必关注我一下.

你可能感兴趣的:(python,postgresql,pandas)