【发布时间】:2018-12-28 04:48:34
【问题描述】:
我正在尝试显示来自 firebird 3.x 数据库的结果,但得到:
文件 "/...../Envs/pos/lib/python3.6/site-packages/fdb/fbcore.py", 第 479 行,在 b2u return st.decode(charset) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd1 in position 9: invalid continuation byte
尽管我到处都设置了 utf-8:
# -- coding: UTF-8 --
import os
os.environ["PYTHONIOENCODING"] = "utf8"
from sqlalchemy import *
SERVIDOR = "localhost"
BASEDATOS_1 = "db.fdb"
PARAMS = dict(
user="SYSDBA",
pwd="masterkey",
host="localhost",
port=3050,
path=BASEDATOS_1,
charset='utf-8'
)
firebird = create_engine("firebird+fdb://%(user)s:%(pwd)s@%(host)s:%(port)d/%(path)s?charset=%(charset)s" % PARAMS, encoding=PARAMS['charset'])
def select(eng, sql):
with eng.connect() as con:
return eng.execute(sql)
for row in select(firebird, "SELECT * from clientes"):
print(row)
【问题讨论】:
-
您找到解决方案了吗?
-
您找到解决方案了吗? Me ajuda pelo amor de deus, to nisso a um tempo ja tambem
标签: python python-3.x unicode sqlalchemy