skillfed

dmpython

Python interface to Dameng

dmpython v2.5.38 387.2K downloads/30d#7,045 on PyPI
Permissive license Python Software Foundation License Active released

What it is and what it does

dmPython is the official Python driver for Dameng databases, maintained by Dameng and built on the Python DB API 2.0 standard. It allows Python applications to connect directly to Dameng databases and execute SQL queries, retrieve results, and manage transactions through a familiar cursor-based interface. The driver is distributed as compiled wheels for most platforms, eliminating the need for DPI configuration in typical installations.

The package handles core database operations including connection management, SQL execution, parameter binding, and result fetching. It supports advanced features like stored procedure calls, large object handling (BLOB/CLOB), and output parameters. Recent versions have added support for boolean types, IPv6 connections, multi-tenant connections, and improved handling of special characters in passwords and bulk data operations.

Use it for:

  • Connect Python applications to Dameng databases for OLTP or reporting workloads using standard DB API patterns
  • Build data pipelines that extract, transform, and load data from Dameng into Python data science workflows
  • Integrate Dameng as a backend for Django or SQLAlchemy-based web applications via dialect packages
  • Execute parameterized queries and stored procedures from Python with proper escaping and type handling
  • Manage large result sets and binary data (BLOB/CLOB) retrieval from Dameng tables

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

dmPython is a native Python driver for connecting to Dameng databases, implementing the Python DB API 2.0 specification to enable direct database access from Python applications.

Yes. dmPython is actively maintained, has no known vulnerabilities, installs cleanly via wheels, and is the official driver for Dameng database access from Python. Install it if you need to connect Python applications to Dameng databases. Be aware that SSL encryption support depends on libssl 1.1+ being available or properly configured on your system.

Install

dmpython on PyPI

pip

pip install dmpython

uv

uv add dmpython

poetry

poetry add dmpython

Installing dmpython

Before you install

Installation is straightforward via wheel packages with no runtime dependencies. The package is actively maintained with recent releases and supports multiple Python versions (3.7–3.14). Medium install friction reflects that source installations require DPI environment configuration, though wheel installs do not.

License in practice

Licensed under the Python Software Foundation License (permissive), allowing use in most projects without significant restrictions.

Quickstart

pip install dmPython

import dmPython
conn = dmPython.connect('SYSDBA/Dmsys_123@localhost:5236/sch1')
cursor = conn.cursor()
cursor.execute("SELECT * FROM DUAL;")
result = cursor.fetchall()

Source installations require DPI (Dameng DPI interface) environment configuration; wheel installations do not. SSL encryption module (libssl 1.1+) may need to be available or LD_LIBRARY_PATH configured to point to the bundled dmssl directory.

Verify before relying

  • Whether sqlalchemy and django dialect support (dmSQLAlchemy, dmDjango) are included or require separate installation
  • Specific Python version minimum requirement (classifiers list Python 2 and 3 but requires_python is unspecified)
  • Full scope of supported Dameng database versions and compatibility matrix

Package facts

License Python Software Foundation License (permissive)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 28 days since the last release
First released
Downloads 387,161/month — #7,045 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: dmpython-2.5.38-cp310-cp310-manylinux2010_x86_64.manylinux_2_12_x86_64.whl; dmpython-2.5.38-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; dmpython-2.5.38-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; dmpython-2.5.38-cp310-cp310-win_amd64.whl; dmpython-2.5.38-cp311-cp311-manylinux2010_x86_64.manylinux_2_12_x86_64.whl; dmpython-2.5.38-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; dmpython-2.5.38-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; dmpython-2.5.38-cp311-cp311-win_amd64.whl; dmpython-2.5.38-cp312-cp312-manylinux2010_x86_64.manylinux_2_12_x86_64.whl; dmpython-2.5.38-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; dmpython-2.5.38-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; dmpython-2.5.38-cp312-cp312-win_amd64.whl; dmpython-2.5.38-cp313-cp313-manylinux2010_x86_64.manylinux_2_12_x86_64.whl; dmpython-2.5.38-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; dmpython-2.5.38-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; dmpython-2.5.38-cp313-cp313-win_amd64.whl; dmpython-2.5.38-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; dmpython-2.5.38-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; dmpython-2.5.38-cp314-cp314-win_amd64.whl; dmpython-2.5.38-cp37-cp37m-manylinux2010_x86_64.manylinux_2_12_x86_64.whl

Keywords: Dameng

Development Status :: 6 - MatureIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: CProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: Database

Tags

dameng database driverpython dameng connectiondm database adapterdameng db apipython db api damengdameng sql interfacedm database python
database-driverdameng

More Database packages