> > On Sun, Dec 11, 2016 at 20:42 Richard Hipp <d...@sqlite.org> wrote: > > SQLite only uses the "[" character as a compatibility quoting > > mechanism for SQL Server. Maybe the solution is for [...] quoting to > > simply not work on EBCDIC systems? > > > > -- > > D. Richard Hipp > > d...@sqlite.org > > This would be one possibility—you then might be able to simultaneously support several EBCDIC code pages with a single 'aiClass' definition (cp37 and cp1047 for example).
(For what it's worth, I'm sure my application doesn't use this compatibility quoting mechanism on the EBCDIC system.) However, maybe it would be better to pick a specific EBCDIC code page to provide an 'aiClass' definition for in the SQLite sources, and make a note about this in the docs—perhaps something like this to start: "SQLite is designed to compile and run on EBCDIC-based systems that use code page $CHOSEN_CODEPAGE. If you wish to build SQLite for a system that uses a different EBCDIC codepage, you will need to modify the definition of the 'aiClass' table used by the SQL tokenizer." An alternative possibility would be to revert to the pre-3.11 tokenizer on EBCDIC systems. If I recall, the old tokenizer used a big switch statement with character literals instead of the 'aiClass' table. I believe this would avoid the EBCDIC tokenizing troubles, at the expense of lower performance on those systems, and with the maintenance cost of keeping 2 code paths around. Brad Larsen _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users