-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Continue for tests from #13.
There is no correct form in PostgreSQL for this Firebird table
CREATE TABLE "fb_T"
(
"i1" integer NOT NULL,
"i0" integer,
"t" character varying(16)
);
My propositions for You
- New options allowed for foreign server, table and column "preserve_table_case" (for server and foreign table) and "preserve_column_case"(for server, foreign table and column). Options must have overlapping "preserve_table_case" for a table and overlapping "preserve_column_case" for a column.
- Allow quoting in literal of options "table_name" and "column_name" with new c error "quote not closed". Will it rational?
What is recommended default behaviour by ISO if case not preserved? All PostgreSQL names uppercased to Firebird, all Firebird names lowercased to PostgreSQL. Transformation of character by ISO must pass "turkish test" by current locale of PostgreSQL database. If locale=tr_TR
there is special toupper/tolower rules.
As discussed by lots and lots of people, the “I” in Turkish behaves differently than in most languages. Per the Unicode standard, our lowercase “i” becomes “İ” (U+0130 “Latin Capital Letter I With Dot Above”) when it moves to uppercase. Similarly, our uppercase “I” becomes “ı” (U+0131 “Latin Small Letter Dotless I”) when it moves to lowercase.
See http://www.moserware.com/2008/02/does-your-code-pass-turkey-test.html