This has undesired effects when converting a QSqlRecord to JSON.
A char(0) e.g. has special semantics that are undesired when
reading a Tinyint column.
I don't think that returning bool for the special case of a
Tinyint(1) is required. This also did not happen before, and
is also not happening when not using a prepared statement.
Instead, a plain int/uint QVariant is returned.
This patch extends tst_QSqlQuery::integralTypesMysql to also
cover reading and writing booleans from/to a MySQL table column
of type Tinyint(1). Additionally, the reading is now also done
with a prepared statement and we also check the raw variant
value.
The broken behavior fixed by this patch was introduced by me in
commit
|
||
|---|---|---|
| .. | ||
| qsql | ||
| qsqldatabase | ||
| qsqldriver | ||
| qsqlerror | ||
| qsqlfield | ||
| qsqlquery | ||
| qsqlrecord | ||
| qsqlresult | ||
| qsqlthread | ||
| kernel.pro | ||