System.Data.SQLite
View Ticket
Not logged in
Ticket UUID: 544dba0a2f766a0e8f52aca494ea24bc59b1aae0
Title: DbDataReader.GetValue() does not return bool for BOOLEAN SQLite column
Status: Closed Type: Code_Defect
Severity: Critical Priority: Immediate
Subsystem: Db_Type_Conversion Resolution: Fixed
Last Modified: 2011-10-13 06:20:43
Version Found In: 1.0.76
Description:
It works for a BOOL type column, but not for BOOLEAN.

The changes to SQliteConvert.TypeNameToDbType(string Name) seems to cause this.

1.0.66: if (String.Compare(Name, 0, _typeNames[n].typeName, 0, _typeNames[n].typeName.Length, StringComparison.OrdinalIgnoreCase) == 0) return _typeNames[n].dataType;

Here the input type name is only compared up to the length of _typeNames[n].typeName (So basically a String.StartsWith), while 1.0.76 compares the whole typeName.


mistachkin added on 2011-10-13 06:20:43 UTC:
The BOOLEAN type needed to be added to the lookup table now that StartsWith matching is no longer used. Fixed by check-in [453dc69391], with tests.