>From my logs : Create statement : CREATE TABLE VariableDetails (dtl_id INTEGER PRIMARY KEY ASC AUTOINCREMENT, storage_implicit BOOLEANCHECK (storage_implicit = 'true' OR storage_implicit = 'false'), storage_type TEXT NOT NULL);
Insert statement INSERT INTO VariableDetails (storage_implicit, storage_type) VALUES (true, INT_64); ( Values are not passed dirrectly in the statement. The boolean in particular is passed using sqlite3_bind_int() ) As far as i can see (debugging using debuggable version of Qt), it's at sqlite calls that the insert failure is detected, and no error is 'forgotten' by Qt at table creation. 2015-08-17 14:12 GMT+02:00 Olivier Barthelemy <barthelemy at geovariances.com>: > Hi, > > I have been using sqlite through Qt. > > I have been using for a while the boolean constraint "CHECK > (varname='true' OR varname='false')" when creating tables with boolean > fields and had no issues in Qt 4.8.6 (sqlite 3.7.7.1) > > Now i am trying to port to Qt 5.4.2 (sqlite 3.8.6). > > I can load already created databases that have this boolean constraint, or > create new tables with boolean fields that have this constraint, but the > constraint now always fail at an insert. > > Removing that constraint, or using "CHECK (varname=0 OR varname=1)" > instead makes the application work again > > Is it a regression that should be made to work again? Or was the > constraint invalid, and in that case there is a bug because adding the > constraint should fail? > > -- [image: Geovariances] Olivier BARTHELEMY *Software development engineer* Geovariances, 49bis avenue Franklin Roosevelt - 77215 AVON CEDEX - FRANCE | www.geovariances.com <http://link.geovariances.com/eml-home> Keep posted about Geovariances <http://link.geovariances.com/eml-geowidget> <http://link.geovariances.com/eml-linkedin-gv> <http://link.geovariances.com/eml-linkedin> <http://link.geovariances.com/eml-twitter> <http://link.geovariances.com/eml-youtube> <http://link.geovariances.com/eml-slideshare>