Skip to content

Commit 27333ce

Browse files
committed
add dbDriver allow to override for pyodbc
1 parent ea0b3d4 commit 27333ce

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/DatabaseLibrary/connection_manager.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ def __init__(self):
3434
self._dbconnection = None
3535
self.db_api_module_name = None
3636

37-
def connect_to_database(self, dbapiModuleName=None, dbName=None, dbUsername=None, dbPassword=None, dbHost=None, dbPort=None, dbCharset=None, dbConfigFile="./resources/db.cfg"):
37+
def connect_to_database(self, dbapiModuleName=None, dbName=None, dbUsername=None, dbPassword=None, dbHost=None, dbPort=None, dbCharset=None, dbDriver=None dbConfigFile="./resources/db.cfg"):
3838
"""
3939
Loads the DB API 2.0 module given `dbapiModuleName` then uses it to
4040
connect to the database using `dbName`, `dbUsername`, and `dbPassword`.
@@ -101,8 +101,9 @@ def connect_to_database(self, dbapiModuleName=None, dbName=None, dbUsername=None
101101
self._dbconnection = db_api_2.connect(database=dbName, user=dbUsername, password=dbPassword, host=dbHost, port=dbPort)
102102
elif dbapiModuleName in ["pyodbc", "pypyodbc"]:
103103
dbPort = dbPort or 1433
104-
logger.info('Connecting using : %s.connect(DRIVER={SQL Server};SERVER=%s,%s;DATABASE=%s;UID=%s;PWD=%s)' % (dbapiModuleName, dbHost, dbPort, dbName, dbUsername, dbPassword))
105-
self._dbconnection = db_api_2.connect('DRIVER={SQL Server};SERVER=%s,%s;DATABASE=%s;UID=%s;PWD=%s' % (dbHost, dbPort, dbName, dbUsername, dbPassword))
104+
dbDriver = dbDriver or "{SQL Server}"
105+
logger.info('Connecting using : %s.connect(DRIVER=%s;SERVER=%s,%s;DATABASE=%s;UID=%s;PWD=%s)' % (dbDriver, dbapiModuleName, dbHost, dbPort, dbName, dbUsername, dbPassword))
106+
self._dbconnection = db_api_2.connect('DRIVER=%s;SERVER=%s,%s;DATABASE=%s;UID=%s;PWD=%s' % ( dbDriver, dbHost, dbPort, dbName, dbUsername, dbPassword))
106107
elif dbapiModuleName in ["excel"]:
107108
logger.info(
108109
'Connecting using : %s.connect(DRIVER={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=%s;ReadOnly=1;Extended Properties="Excel 8.0;HDR=YES";)' % (

0 commit comments

Comments
 (0)