RehanAhmad25 commented on code in PR #74539:
URL: https://github.com/apache/airflow/pull/74539#discussion_r4260233762


##########
providers/microsoft/mssql/docs/connections/mssql.rst:
##########
@@ -74,3 +74,39 @@ If serializing with JSON:
         "port": 1433,
         "schema": "database_name"
     }'
+
+Choosing the DBAPI driver
+-------------------------
+
+By default the hook connects with `pymssql 
<https://pypi.org/project/pymssql/>`__. To use Microsoft's
+`mssql-python <https://pypi.org/project/mssql-python/>`__ driver instead, 
install the extra:
+
+.. code-block:: bash
+
+    pip install 'apache-airflow-providers-microsoft-mssql[mssql-python]'
+
+and set ``dbapi_driver`` to ``mssql_python`` in the connection extra:
+
+.. code-block:: bash
+
+    export AIRFLOW_CONN_MSSQL_DEFAULT='{
+        "conn_type": "mssql",
+        "login": "username",
+        "password": "password",
+        "host": "server.com",
+        "port": 1433,
+        "schema": "database_name",
+        "extra": {"dbapi_driver": "mssql_python", "TrustServerCertificate": 
"yes"}

Review Comment:
   I checked the other DB providers. The only one that selects a client library 
through an extra is MySQL (`client`). JDBC uses `driver_path` and 
`driver_class`, and ODBC’s driver is the ODBC `driver` name, so I kept 
`dbapi_driver` to avoid mixing them up. If you’d prefer `client` for 
consistency with MySQL, I can rename it.
   
   On the docs, other providers lead with a URI example and show JSON with 
extras nested under `extra`, so I’ll add a URI example next to the JSON one. 
I’ll also switch the missing-package error to 
`AirflowOptionalProviderFeatureException`, like the other hooks.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to