python读取与写入postgresql库

读取PG数据库

方法一: 使用psycopg2

import psycopg2
import pandas as pd
# database,user,password,host,port分别对应要连接的PostgreSQL数据库的数据库名、数据库用户名、用户密码、主机、端口信息,请根据具体情况自行修改
conn = psycopg2.connect(database="db",user="usr",
	password="pw",host="ip",port="5432")
cur = conn.cursor()

#查询指令
query = """
SELECT *
FROM schemaA.tableB
"""

# 执行
cur.execute(query)

# 读取数据
rows = cur.fetchall()

# 用pandas将数据转换成dataframe格式,以便后续操作
email_pd = pd.DataFrame(rows)

# 关闭数据库连接
conn.close()

方法二:使用 sqlalchemy

from sqlalchemy import create_engine
import pandas as pd
SQLALCHEMY_DATABASE_URI = 'postgresql://账号:密码@IP地址:5432/database名'
engine = create_engine(SQLALCHEMY_DATABASE_URI)

# 直接用pandas去读取,省去了转换的步骤
df = pd.read_sql('''SELECT * 
					FROM schemaA.tableB  
                 ''', engine)

写入PG数据库

使用sqlalchemy


# create connection
SQLALCHEMY_DATABASE_URI = 'postgresql://账号:密码@IP地址:5432/database名'
engine = create_engine(SQLALCHEMY_DATABASE_URI)
	
# 写入pg库
df.to_sql(schema='schma', con=engine, name = 'table_name', if_exists='replace', index=False)



路遥知马力,
更应砥砺前行
mingxin

上一篇:Tomcat部署


下一篇:Google Earth Engine ——2000年至今Landsat影像红树林数据库