Ticket Hash: | a340eef47b0cad59f01889a2d92cb75a7a1cb1a3 | ||
Title: | PRAGMA case_sensitive_like can corrupt some databases. | ||
Status: | Closed | Type: | Code_Defect |
Severity: | Important | Priority: | Immediate |
Subsystem: | Unknown | Resolution: | Wont_Fix |
Last Modified: |
2019-05-08 17:29:15 6.00 years ago |
Created: |
2019-05-01 13:09:08 6.02 years ago |
Version Found In: | 3.28.0 |
User Comments: | ||||
drh added on 2019-05-01 13:09:08:
The "PRAGMA case_sensitive_like" command changes the behavior of the LIKE operator. But that means that if the LIKE operator is used in the schema, for example in a CHECK constraint or in a partial index or an index on an expression, then a change in behavior of LIKE can cause the database content to disagree with the schema. This issue was brought to our attention by a mailing list post from Manuel Rigger. This problem is unusual in that it is a defect in the design of SQLite, not a defect in the implementation. It is unclear what can or should be done to resolve this issue. Possible resolutions include, but are not limited to, the following:
drh added on 2019-05-08 17:28:56: For now, this issue is merely documented. No change are made to the code, except for a new compile-time option to complete disable the PRAGMA case_sensitive_like command. We might revisit this choice later. |