python操作達夢數據庫使用的是達夢官方提供的dmPython包。
使用python連接達夢數據庫有以下幾個要點:
一、程序部署的環境(win還是linux)
二、數據庫部署的環境(win還是linux)
三、二者在不在同一環境下?
在連接達夢數據庫時,其實最重要的是第三點。如果庫和程序在一起,那麼直接python3 setup.py install 就可以安裝好dmPython包。然後開始像連接其他數據為一樣進行操作。
如果庫在linux環境下,而程序在win下,或者庫在linux下,程序在另一台linux機器下,則連接過程中有一個比較重要環境問題去處理。
dmPython這個包在運行過程中需要調用達夢數據庫下的一些指定文件,所以如果庫和程序沒在同一台機器下,找不到這些文件,自然就無法調用。所以如果想要運行,卻不想多搭一個達夢環境,就需要把已經安裝的達夢數據庫目錄下的bin,drivers,include這三個文件目錄復制到和程序在同一環境下,然後配置環境變量
DM_HOME=/home/dmdba/dmdbms
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/dmdba/dmdbms/drivers/dpi/
這兩個環境變量配置好後就可以安裝dmPython包,在達夢數據庫官方網站就可以下載,在pypi庫下試了,沒有對應的包。然後安裝。
在win環境下,大多時候還會報一個缺少c++14的問題。需要下載安裝。解決過程就是缺少什麼環境,就解決什麼環境問題就好。按部就班。沒有其他可以去操作的。
達夢數據庫在使用過程中,對於新手其實不太友好,在這裡記錄一下吧。
在建表的時候,要記得所有的表名,字段不要加雙引號,加了雙引號之後,數據庫就會認定"id"是字段,就是字段標識中也包含有雙引號,在後續使用的過程中,如果需要指定字段查詢,就要給字段加雙引號。這個非常不方便。還有一個是做完增、刪、改、查後一定要記得提交。否則數據庫不會自動提交。而且很容易出現鎖超時問題。這是很讓人頭疼的一個問題。需要執行另一串代碼解鎖後使用。
所以在操作的時候要仔細一些,不然容易吃沒有文化的虧。