FWIW: If you build a database using NOCASE version 1, then try to use the database with a different NOCASE version X where X>1, the database will appear to be corrupt, since the order of the indices will be incorrect. However, you can easily fix this by running REINDEX. That is what the REINDEX command was created for - to rebuild indices after changing the definition of a collation.
On Mon, Aug 26, 2013 at 1:16 PM, Igor Tandetnik <i...@tandetnik.org> wrote: > On 8/26/2013 11:58 AM, Simon Slavin wrote: > >> >> On 26 Aug 2013, at 4:44pm, Jan Slodicka <j...@resco.net> wrote: >> >> int rc = sqlite3_create_collation(db, "NOCASE", SQLITE_UTF8, 0, >>> sqlite3_collate); >>> >> >> As a risk, I see overriding an existing collation name as risky. If any >> application makes changes to the database without the extension loaded, >> you're going to get corrupt indexes. Can you instead make up a new >> collation name ? >> > > Furthermore, the collation depends on the system locale. If the system > locale changes, that could similarly lead to corrupted indexes. Not sure > how much of a concern that is with iOS (I'm really only familiar with > Windows desktop, where changing the system locale is possible, and moreover > different users on the same machine may run under different locales). > -- > Igor Tandetnik > > > ______________________________**_________________ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-**bin/mailman/listinfo/sqlite-**users<http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users> > -- D. Richard Hipp d...@sqlite.org _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users