Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
6.6.1, 6.8.0
-
-
000d462bf (dev), 0b5b6e7db (6.7), 38277a88f (dev), d10cba961 (6.9), e43f6d708 (6.8), d2cd406b3 (dev), deda96666 (6.10), bae157261 (6.9), 022bb08ac (tqtc/lts-6.8)
Description
The SQL QODBC driver implementation fails to escape passwords set with setPassword(...). Authentication fails when using a password with special characters like ";". However, when wrapping the password inside { }, authentication succeeds.
Proper escaping should be done in the driver implementation.
To reproduce the issue:
- Create a test database with Microsoft SQL Server.
- Ensure that your database accepts SQL Server and Windows Authentication mode.
- Create a user and ensure that their password contains ";".
- Edit the values in the attached example project to match your database information and user credentials.
- Run the attached example project.
Attachments
Issue Links
- relates to
-
QTBUG-137010 QSqlDatabase::setPassword() is not working for Microsoft Access database (mdb/accdb).
-
- Closed
-
- resulted in
-
PYSIDE-2744 The script terminates unexpectedly with exit code 3221225477 upon attempting to import QSqlDatabase.
-
- Closed
-
-
QTBUG-123444 regression: ODBC connection strings no longer work with QSqlDatabase::setDatabaseName()
-
- Closed
-
For Gerrit Dashboard: QTBUG-122642 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
543254,2 | SQL/ODBC: escape values in connection string | dev | qt/qtbase | Status: MERGED | +2 | 0 |
544775,2 | SQL/ODBC: escape values in connection string | 6.7 | qt/qtbase | Status: MERGED | +2 | 0 |
603103,4 | SQL/ODBC: escape values in connection string | dev | qt/qtbase | Status: MERGED | +2 | 0 |
618974,2 | SQL/ODBC: escape values in connection string | 6.9 | qt/qtbase | Status: MERGED | +2 | 0 |
619168,2 | SQL/ODBC: escape values in connection string | 6.8 | qt/qtbase | Status: MERGED | +2 | 0 |
646936,3 | SQL/ODBC: fix escaping the username/password | dev | qt/qtbase | Status: MERGED | +2 | 0 |
651670,2 | SQL/ODBC: fix escaping the username/password | 6.10 | qt/qtbase | Status: MERGED | +2 | 0 |
651770,2 | SQL/ODBC: fix escaping the username/password | 6.9 | qt/qtbase | Status: MERGED | +2 | 0 |
651885,2 | SQL/ODBC: fix escaping the username/password | tqtc/lts-6.8 | qt/tqtc-qtbase | Status: MERGED | +2 | 0 |