Имеем:
1. Сервер IB7.1
2. База создана с DEFAULT CHARACTER SET WIN1251;
3. Почти все строковые поля созданные через примерно такие домены
create DOMAIN TString25 VARCHAR(25) COLLATE PXW_CYRL;
4. Доступ к данным через IBX, при подключении указана кодировка WIN1251
Возникла необходимость ФИО писать и на казахском языке, т.е. либо на русском, либо на казахском.
Чтобы это реализовать, насколько я понял, нужно:
1. В базе кодировку по умолчанию оставить WIN1251
2. Поле FIO создать с CHARACTER SET UNICODE_FSS
3. К базе подключаться с помощью FIB (IBX не дружит UNICODE), указывая кодировку UNICODE_FSS
4. Использовать в приложении Data Control умеющие работать с UNICODE (например: TntUnicode)
Правильно ли я понимаю?
Какие могут возникнуть проблемы при таком раскладе? (кроме как Upper(FIO) и ORDER BY FIO)
Если понимаю правильно, то возникает еще такая проблема:
- переделать софт с IBX на FIB слишком трудоемко, т.к. он пишется до сих пор уже почти 7 лет.
Что посоветуете в такой ситуации?