链接 达梦数据库,出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: 错误

1-

self._conn = dmPython.connect(self._user, self._passwd, conn_url)
print(dir(self._conn))  # 查看链接所在目录的子文件

2-

self._conn.local_code  # 查看数据库当前的编码

链接 达梦数据库,出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: 错误_第1张图片

3-

dir(dmPython)  # 查看某个包里面的子目录
[(i, getattr(dmPython, i)) for i in dir(dmPython) if i.startswith("PG")]  # 查看子目录中特定属性的值

链接 达梦数据库,出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: 错误_第2张图片

4-通过上述步骤,可以看出,当前数据库编码方式为“PG_GB18030”,所以,出现了如下错误:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0:
  invalid start byte

5-至此,可以知道,达梦数据库修改链接编码方式的方式为:

conn_url = "%s:%s" % (self._host, self._port)
self._conn = dmPython.connect(self._user, self._passwd, conn_url)
self._conn.local_code = 1

将编码方式设置为:UTF-8。

 

感谢同事~

 

你可能感兴趣的:(dm7)