diff --git a/backend/data_manager_v2.py b/backend/data_manager_v2.py index 1d210ee..e1a07ad 100644 --- a/backend/data_manager_v2.py +++ b/backend/data_manager_v2.py @@ -200,9 +200,21 @@ class DataManager: def sql_conn(self): import pyodbc + driver = os.getenv("SQL_DRIVER") + if not driver: + installed = pyodbc.drivers() + if "ODBC Driver 18 for SQL Server" in installed: + driver = "ODBC Driver 18 for SQL Server" + elif "ODBC Driver 17 for SQL Server" in installed: + driver = "ODBC Driver 17 for SQL Server" + elif "FreeTDS" in installed: + driver = "FreeTDS" + else: + driver = "SQL Server" conn_str = ( - f"DRIVER={{SQL Server}};SERVER={self.sql_server};" - f"DATABASE={self.sql_db};UID={self.sql_user};PWD={self.sql_pass}" + f"DRIVER={{{driver}}};SERVER={self.sql_server};" + f"DATABASE={self.sql_db};UID={self.sql_user};PWD={self.sql_pass};" + "Encrypt=no;TrustServerCertificate=yes;" ) return pyodbc.connect(conn_str)