dmPython 简介
dmPython 是 DM 提供的依据 Python DB API version 2.0 中 API 使用规定而开发的数据库访问接口。
使用 Python 连接达梦数据库时需要安装 dmPython。安装完 DM 数据库软件后,在安装路径下的 drivers 目录下,可以找到 dmPython 的驱动源码,由于提供的是源码,需要自己编译安装。
Windows 环境编译安装 dmPython
安装 DM 数据库软件并设置 DM_HOME 环境变量
dmPython 源码依赖 DM 安装目录中提供的 include 头文件,编译安装前需要检查是否安装 DM 数据库软件,并设置 DM_HOME 环境变量。
设置 DM_HOME 环境变量
安装编译工具 Microsoft Visual C++ Build Tools
编译安装 dmPython
安装完 DM 数据库软件后,在安装路径下的 drivers 目录下,找到 dmPython 的驱动源码。
进入到 dmPython 驱动源码目录
cd D:\dmdbms\drivers\python\dmPython
编译安装 dmPython
python setup.py install
编译安装结束后使用 pip list 命令查看是否安装成功
查看搜索路径并将 dpi 目录文件拷贝到搜索路径下
dmPython 通过调用 DM DPI 接口完成 Python 模块扩展。在其使用过程中,除 Python标准库以外,还需要 DPI 的运行环境。
进入 python 解释器查看搜索路径
python
import sys
sys.path
C:\Users\Admin\AppData\Local\Programs\Python\Python39\lib\site-packages\dmpython-2.3-py3.9-win-amd64.egg
代码示例
import dmPython
r"""
默认开启自动提交(autoCommit)模式
"""
class DmDb:
def __init__(self, user='SYSDBA', password='SYSDBA', server='localhost', port=5236):
"""
初始化方法,创建连接对象,游标对象
:param user: 账号(对应模式名)
:param password:密码
:param server: 数据库ip
:param port: 端口
"""
try:
self.conn = dmPython.connect(user=user, password=password, server=server, port=port)
self.cursor = self.conn.cursor()
if self.cursor: print('>>>数据库连接成功<<<')
except Exception as err:
print(err)
def __del__(self):
# 对象被销毁的时候执行 关闭连接对象
self.conn