Еще одно наблюдение.
Тест проводился в IBExpert. FB 2.1 SS win32.
База - dafault characterset win1251.
Подключение - win1251
CREATE TABLE TEST (
ID INTEGER,
MEMO BLOB SUB_TYPE 1 SEGMENT SIZE 80 CHARACTER SET UNICODE_FSS
);
В таблице две записи.
1. UPDATE tset SET memo='мир' WHERE id=2
SELECT * FROM test; memo неправильно т.е. не преобразуется в
AnsiChar;
SELECT 'ку-ку' || memo FROM test - все ок.
SELECT * WHERE memo CONTAINING - работает нормально
2. Используем параметр
UPDATE tset SET memo=:memo WHERE id=2
Параметр = 'мир'
SELECT * FROM test; memo нормальное;
SELECT 'ку-ку' || memo FROM test - ОШИБКА - Cannot transliterate
charset between
character sets
SELECT * WHERE memo CONTAINING - старая ошибка.