The c-treeACE SQL ADO.NET Data Provider was setting TINYINT values as Byte rather than SByte type causing a return of unsigned instead of signed values. This has been switched. ADO.NET applications using TINYINT values should consider this change a compatibility issue and substitute usage accordingly.