System.Data.SQLite

Login
This project makes use of Eagle, provided by Mistachkin Systems.
Eagle: Secure Software Automation
2023-05-31
19:31 Closed ticket [e22d357a21]: Parameter name is case-sensitivity doesn't match database behavior plus 4 other changes artifact: 9af17a7f94 user: mistachkin
19:28
Add tests for ticket [e22d357a21]. check-in: 7edc811b3a user: mistachkin tags: trunk
2023-05-30
01:04 Pending ticket [e22d357a21]: Parameter name is case-sensitivity doesn't match database behavior plus 3 other changes artifact: add0c26600 user: mistachkin
2023-05-29
23:33
Preliminary changes to address the issue in ticket [e22d357a21]. check-in: eab4711ccf user: mistachkin tags: trunk
23:32 Ticket [e22d357a21] Parameter name is case-sensitivity doesn't match database behavior status still Open with 6 other changes artifact: fe0d47f349 user: mistachkin
2023-05-28
12:43 New ticket [e22d357a21]. artifact: 4049635f13 user: anonymous

Ticket Hash: e22d357a213a4cd450434a0130ee75421efb3946
Title: Parameter name is case-sensitivity doesn't match database behavior
Status: Closed Type: Code_Defect
Severity: Minor Priority: Medium
Subsystem: Statement Resolution: Fixed
Last Modified: 2023-05-31 19:31:00
Version Found In: 1.0.117.0
User Comments:
anonymous added on 2023-05-28 12:43:14:

I've discovered that System.Data.SQLite treats parameter name as case-insensitive which leads to lost(replaced) command parameter when command contains several parameters which differ just by case.

SQLite itself treats parameters as case-sensitive (and also works this way with Microsoft.Data.Sqlite).

Issue caused by use of StringComparison.OrdinalIgnoreCase instead of StringComparison.Ordinal in SQLiteParameterCollection.IndexOf method:

https://system.data.sqlite.org/index.html/file?name=System.Data.SQLite/SQLiteParameterCollection.cs


mistachkin added on 2023-05-29 23:32:15:

Thanks for the report.

After some research, it seems that the SQLiteStatement class needs a minor change as well.

I'll try to get this fix included in the 1.0.118.0 release.


mistachkin added on 2023-05-31 19:31:00:

Fixed on trunk, with tests.