Python連接Kingbase的實現(xiàn)示例
背景
由于之前Py程序連接的MySQL,現(xiàn)在適配國產(chǎn)DB,所以需要修改程序。
按Kingbase官網(wǎng)步驟操作,卡在import ksycopg2 總是報找不到模塊錯誤!
安裝psycopg2
后來百度發(fā)現(xiàn)使用psycopg2 也可以連接kingbase,結(jié)果一樣報找不到模塊錯誤!
按網(wǎng)上步驟
pip install psycopg2 pip3 install psycopg2
都不好使,后來得到解決方案,具體如下
yum install python3-devel postgresql-devel* pip3 install psycopg2
結(jié)果可行,但我暫時沒用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庫文件
編輯/etc/ld.so.conf文件:
vi /etc/ld.so.conf
添加如下代碼:
執(zhí)行如下代碼:
/usr/sbin/ldconfig
驗證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的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)Python連接Kingbase內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python的Socket編程過程中實現(xiàn)UDP端口復用的實例分享
這篇文章主要介紹了Python的Socket編程過程中實現(xiàn)UDP端口復用的實例分享,文中作者用到了Python的twisted異步框架,需要的朋友可以參考下2016-03-03使用Python實現(xiàn)將Excel表格插入到Word文檔中
在日常辦公場景中,通過Python腳本自動化整合Excel數(shù)據(jù)與Word文檔,能夠?qū)崿F(xiàn)表格的智能遷移,滿足不同場景下數(shù)據(jù)呈現(xiàn)的專業(yè)性要求,下面小編就來為大家介紹一下具體實現(xiàn)的三種方法吧2025-03-03