§
    ‘Õ[hå  ã                  óx   — d Z ddlmZ ddlmZ ddlmZ ddlmZ  G d„ d	e¦  «        Z G d
„ dee¦  «        Z	e	Z
dS )aª  
.. dialect:: mssql+aioodbc
    :name: aioodbc
    :dbapi: aioodbc
    :connectstring: mssql+aioodbc://<username>:<password>@<dsnname>
    :url: https://pypi.org/project/aioodbc/


Support for the SQL Server database in asyncio style, using the aioodbc
driver which itself is a thread-wrapper around pyodbc.

.. versionadded:: 2.0.23  Added the mssql+aioodbc dialect which builds
   on top of the pyodbc and general aio* dialect architecture.

Using a special asyncio mediation layer, the aioodbc dialect is usable
as the backend for the :ref:`SQLAlchemy asyncio <asyncio_toplevel>`
extension package.

Most behaviors and caveats for this driver are the same as that of the
pyodbc dialect used on SQL Server; see :ref:`mssql_pyodbc` for general
background.

This dialect should normally be used only with the
:func:`_asyncio.create_async_engine` engine creation function; connection
styles are otherwise equivalent to those documented in the pyodbc section::

    from sqlalchemy.ext.asyncio import create_async_engine

    engine = create_async_engine(
        "mssql+aioodbc://scott:tiger@mssql2017:1433/test?"
        "driver=ODBC+Driver+18+for+SQL+Server&TrustServerCertificate=yes"
    )

é    )Úannotationsé   )ÚMSDialect_pyodbc)ÚMSExecutionContext_pyodbcé   )ÚaiodbcConnectorc                  ó   — e Zd Zd„ ZdS )ÚMSExecutionContext_aioodbcc                ó8   — | j                              d¬¦  «        S )NT)Úserver_side)Ú_dbapi_connectionÚcursor)Úselfs    úp/var/www/api.easyaligner.net/htdocs/venv_linux/lib/python3.11/site-packages/sqlalchemy/dialects/mssql/aioodbc.pyÚcreate_server_side_cursorz4MSExecutionContext_aioodbc.create_server_side_cursor3   s   € ØÔ%×,Ò,¸Ð,Ñ>Ô>Ð>ó    N)Ú__name__Ú
__module__Ú__qualname__r   © r   r   r
   r
   2   s#   € € € € € ð?ð ?ð ?ð ?ð ?r   r
   c                  ó   — e Zd ZdZdZeZdS )ÚMSDialectAsync_aioodbcÚaioodbcTN)r   r   r   ÚdriverÚsupports_statement_cacher
   Úexecution_ctx_clsr   r   r   r   r   7   s!   € € € € € Ø€Fà#Ðà2ÐÐÐr   r   N)Ú__doc__Ú
__future__r   Úpyodbcr   r   Úconnectors.aioodbcr   r
   r   Údialectr   r   r   ú<module>r"      s½   ðð!ð !ðF #Ð "Ð "Ð "Ð "Ð "à $Ð $Ð $Ð $Ð $Ð $Ø -Ð -Ð -Ð -Ð -Ð -Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1ð?ð ?ð ?ð ?ð ?Ð!:ñ ?ô ?ð ?ð
3ð 3ð 3ð 3ð 3˜_Ð.>ñ 3ô 3ð 3ð !€€€r   