ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决

一句话解决

ksycopg2目前仅支持python2.7/3.5,若版本不同,则会发生报错:

ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决_第1张图片

 替换ksycopg2为psycopg2即可:

pip install psycopg2

测试:

import psycopg2

conn = psycopg2.connect(host="xxx.xxx.xxx.xxx", port="xxxx", user="xxx", password="xxx", database="xxx")
if conn:
    print("connected")

 本文使用的版本为:python:3.6.8,psycopg2:2.9.5。

ksycopg2报错解决办法

如果一定要用ksycopg2,那么需要使用python2.7或者python3.5的环境。

1. python3.5.4下载:Python Releases for Windows | Python.org

 ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决_第2张图片

2. ksycopg2接口驱动下载:人大金仓-成为世界卓越的数据库产品与服务提供商 

ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决_第3张图片

 或者如果安装了人大金仓的应用程序,在安装路径下的interface下也有相应的文件:

ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决_第4张图片

3. 解压python3.5版本的接口驱动,得到ksycopg2文件夹,将其放置在python安装路径的Lib下:

ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决_第5张图片

4. 测试:

import ksycopg2

conn = ksycopg2.connect(host="xxx.xxx.xxx.xxx", port="xxxx", user="xxx", password="xxx", database="xxx")
if conn:
    print("connected")

 可成功运行。

其他

文档[2]中有给出一个似乎是python3.6版本可用的下载链接:

https://kingbase.oss-cn-beijing.aliyuncs.com/KES/07-jiekouqudong/Python.rar

ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决_第6张图片

但是实测python3.6还是会报错。

如有兴趣,可以试试,也许是本文环境有什么条件不满足从而无法使用。

参考文档

[1] python3.X 操作kingbase

[2] python 3.6连接KingbaseES V8

[3] window环境 python 连接 kingbase数据库 报错 ksycopg2._ksycopg

你可能感兴趣的:(问题汇总,python)