pg库报UnicodeDecodeError 'ascii' codec can't decode byte 0xe4 in position 0 ordinal not in range 128

UnicodeDecodeError 'ascii' codec can't decode byte 0xe4 in position 0 ordinal not in range 128

其实就是加个:client_encoding配置

复制代码
#1、直接使用 psycopg2
def __init__(self, dict_flag=False):
    self.conn = psycopg2.connect(host=PostgresParams().get_host(),
                                 port=PostgresParams().get_port(),
                                 user=PostgresParams().get_user(),
                                 password=PostgresParams().get_password(),
                                 database=PostgresParams().get_database())
    # 防止报 UnicodeDecodeError 错误
    self.conn.set_client_encoding('utf8')

#2、DBUtils连接池
pool = PooledDB(
                creator=psycopg2,  # 使用连接数据库的模块 psycopg2
                maxconnections=6,  # 连接池允许的最大连接数,0 和 None 表示不限制连接数
                mincached=1,  # 初始化时,链接池中至少创建的空闲的链接,0 表示不创建
                maxcached=0,  # 链接池中最多闲置的链接,0 和 None 不限制
                blocking=True,  # 连接池中如果没有可用连接后,是否阻塞等待。True,等待;False,不等待然后报错
                maxusage=None,  # 一个链接最多被重复使用的次数,None 表示无限制
                setsession=[],  # 开始会话前执行的命令列表
                host='',
                port='5432',
                user='',
                password='',
                database='',
                client_encoding='utf-8',
            )
复制代码

 

posted @   你说夕阳很美  阅读(174)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示