Python連接Kingbase的實(shí)現(xiàn)示例
背景
由于之前Py程序連接的MySQL,現(xiàn)在適配國(guó)產(chǎn)DB,所以需要修改程序。
按Kingbase官網(wǎng)步驟操作,卡在import ksycopg2 總是報(bào)找不到模塊錯(cuò)誤!
安裝psycopg2
后來(lái)百度發(fā)現(xiàn)使用psycopg2 也可以連接kingbase,結(jié)果一樣報(bào)找不到模塊錯(cuò)誤!
按網(wǎng)上步驟
pip install psycopg2 pip3 install psycopg2
都不好使,后來(lái)得到解決方案,具體如下
yum install python3-devel postgresql-devel* pip3 install psycopg2
結(jié)果可行,但我暫時(shí)沒(méi)用psycopg2 連接kingbase
安裝ksycopg2
下載ksycopg2
下載地址:https://www.kingbase.com.cn/downdriven/index.htm
我下載版本:v8r6_python3.6.8_for_ksycopg2_x86_64.tar.gz
保存ksycopg2
查看python模塊路徑:

將ksycopg2上傳至/root目錄下,
解壓ksycopg2 到 /usr/local/lib64/python3.6/site-packages 目錄下:
tar xf v8r6_python3.6.8_for_ksycopg2_x86_64.tar.gz -C /usr/local/lib64/python3.6/site-packages
加載libpq庫(kù)文件
編輯/etc/ld.so.conf文件:
vi /etc/ld.so.conf
添加如下代碼:

執(zhí)行如下代碼:
/usr/sbin/ldconfig
驗(yàn)證ksycopg2

連接kingbase
class KingbaseDb():
def __init__(self, host, passwd, db):
try:
self.conn = ksycopg2.connect(
host=host,
port=54321,
user='root',
password=passwd,
database=db
)
self.cur = self.conn.cursor()
except ksycopg2.Error as err:
logger.error(err)
sys.exit(-1)
def __del__(self):
try:
self.cur.close()
self.conn.close()
except AttributeError:
pass
def execute_db(self, sqls):
try:
if isinstance(sqls, list):
for sql in sqls:
self.cur.execute(sql)
else:
self.cur.execute(sqls)
self.conn.commit()
except Exception as e:
logger.warning(e)
self.conn.rollback()到此這篇關(guān)于Python連接Kingbase的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Python連接Kingbase內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python學(xué)習(xí)之字典的常用方法總結(jié)
這篇文章主要為大家介紹了Python中字典的幾個(gè)常用方法總結(jié),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python字典有一定幫助,需要的可以參考一下2022-03-03
pyqt6實(shí)現(xiàn)QTimer定時(shí)器介紹和使用場(chǎng)景
PyQt6中的QTimer是一個(gè)定時(shí)器類,用于在指定的時(shí)間間隔內(nèi)執(zhí)行某個(gè)操作,本文主要介紹了pyqt6實(shí)現(xiàn)QTimer定時(shí)器介紹和使用場(chǎng)景,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02
如何利用Python實(shí)現(xiàn)一個(gè)論文降重工具
文章去重(或叫網(wǎng)頁(yè)去重)是根據(jù)文章(或網(wǎng)頁(yè))的文字內(nèi)容來(lái)判斷多個(gè)文章之間是否重復(fù),下面這篇文章主要給大家介紹了關(guān)于利用Python實(shí)現(xiàn)論文降重工具的相關(guān)資料,需要的朋友可以參考下2021-07-07
Python的Socket編程過(guò)程中實(shí)現(xiàn)UDP端口復(fù)用的實(shí)例分享
這篇文章主要介紹了Python的Socket編程過(guò)程中實(shí)現(xiàn)UDP端口復(fù)用的實(shí)例分享,文中作者用到了Python的twisted異步框架,需要的朋友可以參考下2016-03-03
使用Python實(shí)現(xiàn)將Excel表格插入到Word文檔中
在日常辦公場(chǎng)景中,通過(guò)Python腳本自動(dòng)化整合Excel數(shù)據(jù)與Word文檔,能夠?qū)崿F(xiàn)表格的智能遷移,滿足不同場(chǎng)景下數(shù)據(jù)呈現(xiàn)的專業(yè)性要求,下面小編就來(lái)為大家介紹一下具體實(shí)現(xiàn)的三種方法吧2025-03-03
python實(shí)現(xiàn)簡(jiǎn)單ftp客戶端的方法
這篇文章主要介紹了python實(shí)現(xiàn)簡(jiǎn)單ftp客戶端的方法,涉及ftplib模塊的相關(guān)使用技巧,需要的朋友可以參考下2015-06-06

