On 7-4-2016 23:01, Ertan Küçükoğlu ertan.kucuko...@1nar.com.tr [firebird-support] wrote: > Would you be so kind to provide an example SQL which shows how to do > primary key with a case insensitive collation?
1. Register the WIN1254_UNICODE collation (it is defined in fbintl.conf, but not included by default in Firebird): create collation WIN1254_UNICODE for win1254 2. Derive a case insensitive collation from WIN1254_UNICODE: create collation win1254_ci for win1254 from win1254_unicode case insensitive 3. Create table create table win1254test ( stringkey varchar(30) character set win1254 primary key collate win1254_ci ) 4. Test it: INSERT INTO win1254test(stringkey) VALUES('EK'); -- succeeds INSERT INTO win1254test(stringkey) VALUES('ek'); -- fails INSERT INTO win1254test(stringkey) VALUES('Ek'); -- fails INSERT INTO win1254test(stringkey) VALUES('eK'); -- fails I hope this helps, Mark -- Mark Rotteveel