ksycopg2目前仅支持python2.7/3.5,若版本不同,则会发生报错:
替换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,那么需要使用python2.7或者python3.5的环境。
1. python3.5.4下载:Python Releases for Windows | Python.org
2. ksycopg2接口驱动下载:人大金仓-成为世界卓越的数据库产品与服务提供商
或者如果安装了人大金仓的应用程序,在安装路径下的interface下也有相应的文件:
3. 解压python3.5版本的接口驱动,得到ksycopg2文件夹,将其放置在python安装路径的Lib下:
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
但是实测python3.6还是会报错。
如有兴趣,可以试试,也许是本文环境有什么条件不满足从而无法使用。
[1] python3.X 操作kingbase
[2] python 3.6连接KingbaseES V8
[3] window环境 python 连接 kingbase数据库 报错 ksycopg2._ksycopg