最近用ptython处理数据迁移的问题,在连接kingbase的时候遇到一些问题,记录下过程
ksycopg2._ksycopg查了半天最后python版本和驱动版本不一致的问题
1、下载kingbase V8的驱动python驱动,
不过官网是V8R6版本的驱动,我们的数据库是R3版本的
人大金仓-KingbaseES V8 R6https://www.kingbase.com.cn/download/c_id/455.html
R3版本需要手动改下rul没找到入口,改成401.html
人大金仓- (kingbase.com.cn)https://www.kingbase.com.cn/download/c_id/401.html
2、把下载的python文件解压
这里对应驱动上面写着对应python版本3.6.3.7,我瞎开始没看见!!!,python装的最新版本3.10,后面测试连接的时候报错ksycopg2._ksycopg,然后装了3.7版本就可以了。
解压包的这个不装行不行,不确定,我试怕了直接安装了
把文件夹里面 的这个文件放在python的安装目录Lib文件夹下
3、测试连接
import ksycopg2
conn = ksycopg2.connect(database="TEST", user="SYSTEM", password="111111", host="127.0.0.1", port="54321")
cur = conn.cursor()
cur.execute("select 1")
conn.commit()
conn.close()
然后应该就可以了,主要是看版本驱动和python版本!!!!!!!!。