Python连接DM8数据库
1. 測試環(huán)境
在Window中使用Python 2.7.5版本以及DM8數(shù)據(jù)庫進(jìn)行增刪改查,以下是踩坑筆記。
| DM 數(shù)據(jù)庫 | DM 8.0 及以上版本 |
| Python | Python 2.7.5 |
| Window10專業(yè)版 | Window10專業(yè)版 |
注意:實(shí)施過程中遇到報(bào)錯(cuò)一定要看Q&A中有沒有你的問題的解決方案。
2. 步驟
2.1 安裝Python
用戶請自行下載安裝 Python。安裝的 Python 2.7.5 版本
2.2 初始化dmPython
進(jìn)入到dmPython中 編譯,執(zhí)行以下命令
python setup.py install如圖所示即為安裝成功。
如果出現(xiàn)如下提示error: Microsoft Visual C++ 9.0 is required.請參考【Q&A】中的解決方案
2.3 驗(yàn)證dmPython
如果出現(xiàn)如下則說明安裝成功
2.5 測試是否連接成功
# !/usr/bin/python # coding:utf-8 import dmPythontry:conn = dmPython.connect(user='SYSDBA', password='SYSDBA', server='localhost', port=5236)cursor = conn.cursor()print('python: conn success!')conn.close() except (dmPython.Error, Exception) as err:print(err)如果所示,即為成功。
如是下圖:
如果提示ImportError: DLL load failed: 找不到指定的模塊。請到【Q&A】中查看
2.6 增刪改查
#!/usr/bin/python # coding:utf-8 import dmPythontry:conn = dmPython.connect(user='SYSDBA', password='SYSDBA', server='localhost', port=5236)cursor = conn.cursor()try:# 清空表,初始化測試環(huán)境cursor.execute('delete from PRODUCTION.PRODUCT_CATEGORY')except (dmPython.Error, Exception) as err:print(err)try:# 插入數(shù)據(jù)cursor.execute("insert into PRODUCTION.PRODUCT_CATEGORY(NAME) values('1'), ('2'), ('3'), ('4')")print('python: insert success!')# 刪除數(shù)據(jù)cursor.execute("delete from PRODUCTION.PRODUCT_CATEGORY where name='1'")print('python: delete success!')# 更新數(shù)據(jù)cursor.execute('update PRODUCTION.PRODUCT_CATEGORY set name = \'222\' where name=\'2\'')print('python: update success!')# 查詢數(shù)據(jù)cursor.execute("select name from PRODUCTION.PRODUCT_CATEGORY")res = cursor.fetchall()for tmp in res:for c1 in tmp:print c1print('python: select success!')except (dmPython.Error, Exception) as err1:print (err1)conn.close() except (dmPython.Error, Exception) as err:print(err)Q&A
1. pip安裝三方庫不成功
提示:WARNING: You are using pip version 20.2.3, however version 20.2.4 is available.
原因:pip版本過低導(dǎo)致安裝第三方庫失敗
## 直接輸入下面命令解決 python -m pip install --upgrade pip2. error: Microsoft Visual C++ 9.0 is required
原因:包編譯的時(shí)候缺少C++的編譯環(huán)境,所以只需要安裝即可,安裝網(wǎng)盤鏈接中VCForPython27.msi文件。下載完成后雙擊安裝
3. 控制臺亂碼
修改Pycharm的編碼,window默認(rèn)是gbk。
解決方案
4.ImportError: DLL load failed: 找不到指定的模塊
調(diào)用達(dá)夢數(shù)據(jù)庫時(shí)需要調(diào)用DM數(shù)據(jù)庫的一些DLL文件,因?yàn)檎也坏剿詧?bào)錯(cuò)了。
解決方案
在項(xiàng)目啟動時(shí),在Environment variables中配置環(huán)境變量
注意:D:\damba\dm8是我本地dm的安裝路徑,需要替換成自己的。
PYTHONUNBUFFERED=1;PATH=PATH=D:\damba\dm8\drivers\\;D:\damba\dm8\drivers\logmnr\\;D:\damba\dm8\bin資料
鏈接:https://pan.baidu.com/s/1Xv8xmy83VbA42FVk7_NtPA 提取碼:b2u8
=======================================
有任何問題請到技術(shù)社區(qū)反饋。
24小時(shí)免費(fèi)服務(wù)熱線:400 991 6599
達(dá)夢技術(shù)社區(qū):https://eco.dameng.com
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Python连接DM8数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: window部署DM8的DEM系统
- 下一篇: Window下VS运行达梦DPI