(url, driver, query_str)
| 36 | |
| 37 | @generate_driver_url.for_db("mssql") |
| 38 | def generate_driver_url(url, driver, query_str): |
| 39 | backend = url.get_backend_name() |
| 40 | |
| 41 | new_url = url.set(drivername="%s+%s" % (backend, driver)) |
| 42 | |
| 43 | if driver == "pymssql" and url.get_driver_name() != "pymssql": |
| 44 | new_url = new_url.set(query="") |
| 45 | elif driver == "mssqlpython" and url.get_driver_name() != "mssqlpython": |
| 46 | new_url = new_url.set(query={"Encrypt": "No"}) |
| 47 | |
| 48 | if driver == "aioodbc": |
| 49 | new_url = new_url.update_query_dict({"MARS_Connection": "Yes"}) |
| 50 | |
| 51 | if query_str: |
| 52 | new_url = new_url.update_query_string(query_str) |
| 53 | |
| 54 | try: |
| 55 | new_url.get_dialect() |
| 56 | except exc.NoSuchModuleError: |
| 57 | return None |
| 58 | else: |
| 59 | return new_url |
| 60 | |
| 61 | |
| 62 | @create_db.for_db("mssql") |
nothing calls this directly
no test coverage detected