本文主要介绍下python连接postgresql如何操作,以及往数据库表插数时,有些字段可能不是char或者text格式的而是int时,会报错TypeError:must be str,not int。要在python里转成str才行。话不多说,直接看代码!
#!/usr/bin/env python
# -*- coding: utf-8 -*
import psycopg2
# 填写连接数据库的参数
conn = psycopg2.connect(database="db", user="xiaoshu", password="20200521", host="abcdefg", port="1234")
cur = conn.cursor()
cur.execute("select id,name,score from customer ;") # 连接数据库要执行的sql语句
rows = cur.fetchall() # rows是list,每行记录也是list存储
for r in rows
id=r[0]#id是int格式
name = r[1].strip()
score = r[2]#score是int格式
# 因为id和score都是int,在python里要转成str才可以链接
cur.execute("insert into A(id,name,score) values(" + str(id) + ",'"+name+"'," + str(score) + ");")
conn.commit()
cur.close
conn.close