{"library":"sqlalchemy-pytds","title":"SQLAlchemy pytds","type":"library","description":"SQLAlchemy pytds is a pure Python TDS (Tabular Data Stream) connector for SQLAlchemy, enabling communication with Microsoft SQL Server databases. It provides a DBAPI 2.0 compliant interface implemented entirely in Python, removing external dependencies like FreeTDS or ODBC drivers. The current version is 1.0.2, released on September 14, 2024, indicating active development and maintenance.","language":"python","status":"active","last_verified":"Fri May 15","install":{"commands":["pip install sqlalchemy-pytds"],"cli":null},"imports":["from sqlalchemy import create_engine","import sqlalchemy_pytds"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/m32/sqlalchemy-tds","docs":null,"changelog":null,"pypi":"https://pypi.org/project/sqlalchemy-pytds/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"import os\nfrom sqlalchemy import create_engine, text\n\n# Environment variables for connection details\nDB_SERVER = os.environ.get('PYTDS_SQLSERVER_HOST', 'localhost')\nDB_PORT = os.environ.get('PYTDS_SQLSERVER_PORT', '1433')\nDB_USER = os.environ.get('PYTDS_SQLSERVER_USER', 'sa')\nDB_PASSWORD = os.environ.get('PYTDS_SQLSERVER_PASSWORD', 'yourStrongPassword123')\nDB_NAME = os.environ.get('PYTDS_SQLSERVER_DB', 'master')\n\n# Construct the connection string using the 'mssql+pytds' dialect\nconnection_string = (\n    f\"mssql+pytds://{DB_USER}:{DB_PASSWORD}@{DB_SERVER}:{DB_PORT}/{DB_NAME}\"\n)\n\n# Create the engine\ntry:\n    engine = create_engine(connection_string, echo=False) # Set echo=True for SQL logging\n\n    # Establish a connection and execute a simple query\n    with engine.connect() as connection:\n        # Example: Query the SQL Server version\n        result = connection.execute(text(\"SELECT @@VERSION AS sql_server_version\"))\n        for row in result:\n            print(f\"Connected to SQL Server Version: {row.sql_server_version}\")\n\n    print(\"Successfully connected and queried the database.\")\n\nexcept Exception as e:\n    print(f\"Error connecting to the database: {e}\")","lang":"python","description":"This quickstart demonstrates how to establish a connection to a Microsoft SQL Server database using `sqlalchemy-pytds` and `SQLAlchemy`'s `create_engine` function. It retrieves connection parameters from environment variables or uses defaults, then executes a simple query to verify the connection.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-15","installed_version":"1.0.2","pypi_latest":"1.0.2","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":3.4,"avg_import_s":0.64,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.52,"mem_mb":15.5,"disk_size":"43.3M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.5,"import_time_s":0.37,"mem_mb":15.5,"disk_size":"42M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.78,"mem_mb":17.6,"disk_size":"48.6M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.2,"import_time_s":0.66,"mem_mb":17.6,"disk_size":"47M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.84,"mem_mb":17.4,"disk_size":"39.9M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3,"import_time_s":0.81,"mem_mb":17.4,"disk_size":"38M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.8,"mem_mb":17.6,"disk_size":"39.4M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3,"import_time_s":0.75,"mem_mb":17.6,"disk_size":"38M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.45,"mem_mb":15.1,"disk_size":"41.9M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"sqlalchemy-pytds","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4.1,"import_time_s":0.43,"mem_mb":15.1,"disk_size":"41M"}]}}