Ticket Hash: | ac661962a2aeab3c331a4176e273360f0ba5aef1 | |||
Title: | Differing interpretation of historical schemas | |||
Status: | Fixed | Type: | Code_Defect | |
Severity: | Important | Priority: | Immediate | |
Subsystem: | Unknown | Resolution: | Fixed | |
Last Modified: | 2015-11-01 21:19:24 | |||
Version Found In: | 3.9.1 | |||
User Comments: | ||||
drh added on 2015-11-01 21:17:19:
Historically, the following four table have been interpreted the same was, as a two column table with an INTEGER PRIMARY KEY in the first column: CREATE TABLE t1(x integer NOT NULL, y test, PRIMARY KEY(x)); CREATE TABLE t2("x" integer NOT NULL, "y" test, PRIMARY KEY("x")); CREATE TABLE t3([x] integer NOT NULL, [y] test, PRIMARY KEY([x])); CREATE TABLE t4('x' integer NOT NULL, 'y' test, PRIMARY KEY('x')); However, in 3.9.0 and 3.9.1, the t4 table above is interpreted as a two column table with a separate PRIMARY KEY index on the first column. Hence, if the database schema above is created with version 3.8.11.1 or earlier, then PRAGMA integrity_check will show an error with version 3.9.0 and later. Version 3.9.0 and later should interpret all four tables above the same way. |