A simple database interface for Python that builds on top of FreeTDS to provide a Python DB-API (PEP-249) interface to Microsoft SQL Server.

The 2.x branch of pymssql is built on the latest release of FreeTDS which removes many of the limitations found with older FreeTDS versions and the 1.x branch.


  • Unicode friendly
  • Python 3 friendly
  • Works on most popular operating systems
  • Written in Cython for performance
  • Includes a supported and documented low-level module (_mssql) that you can use instead of the DB-API
  • Supports stored procedures with both return values and output parameters
  • A comprehensive test suite
  • Compatible with cooperative multi-tasking systems (gevent, etc.)
  • Can be used to connect to Azure


pymssql is licensed under the terms of the GNU LGPL license.


Can you take a minute and fill out this survey to help us prioritize development tasks?

Indices and tables