powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема при использовании LIKE с UNICODE в IB/FB
4 сообщений из 4, страница 1 из 1
Проблема при использовании LIKE с UNICODE в IB/FB
    #32295961
Привет всем!
Есть БД, часть определения которой приведена ниже.

SET SQL DIALECT 3;
SET NAMES UNICODE_FSS;
CREATE DATABASE 'C:\MyProjects\ENG\IBDB\AC011.GDB'
USER 'SYSDBA' PASSWORD 'masterkey' PAGE_SIZE 8192
DEFAULT CHARACTER SET UNICODE_FSS;

CREATE DOMAIN CH10 AS VARCHAR(10);
CREATE DOMAIN CH50 AS VARCHAR(50);
/* ... */
CREATE TABLE ROOMS (
PRJCODE INTEGER NOT NULL,
ROOMNO CH10 NOT NULL,
NAME CH50
/* ... */
);
Возникает проблема при выполнении операторов вида
SELECT * FROM ROOMS WHERE NAME LIKE 'Коридор%'
причем правый символ % может отсутствовать (поведение то же). При выполнении этого оператора сервер подвисает (испробовано на IB6, FB1, FB1.5). Если вместо 'Коридор' написать 'Coridor', запрос выполняется нормально. Запрос выполнялся нормально и тогда, когда DEFAULT CHARACTER SET был WIN1251. Запросы вида
SELECT * FROM ROOMS WHERE UPPER(NAME) LIKE UPPER('КОРИДОР%')
(именно так: UPPER('от_больших_букв') - работоспособность такого описана, кажется, в открытых фичах/багах FB1 применительно к беларусскому языку) вываливает все записи, где NAME написано в данном случае кириллицей.
Экспериментально также удалось выяснить, что запросы вида
SELECT * FROM ROOMS WHERE NAME LIKE 'Коридор%' collate unicode_fss
также не подвешивают сервер, но и вываливают все записи с кириллическим NAME.

Вопрос: лечится ли это как-то? Если лечится, просьба прояснить, как. Если нет, просьба кинуть идею, какой конструкцией можно заменить указанные операторы.

Заранее спасибо.
...
Рейтинг: 0 / 0
Проблема при использовании LIKE с UNICODE в IB/FB
    #32295964
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если это подвешивает сервер - пиши на news://forums.demo.ru/epsylon.public.interbase - пускай чинят.
Я и сам на грабли ранее незамеченные натупил сегодня - обгадим выпуск релиза FB1.5 !!!
...
Рейтинг: 0 / 0
Проблема при использовании LIKE с UNICODE в IB/FB
    #32295971
Вроде, как выяснилось, FB1.5 здесь ни при чем: IB6 и FB1.0 ведут себя абсолютно так же. Скорее всего, дело в UNICODE_FSS.

А чем так FB1.5 не нравится? Я его еще конкретно не пробовал, но собирался скоро начать :)
...
Рейтинг: 0 / 0
Проблема при использовании LIKE с UNICODE в IB/FB
    #32295976
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да нравится он мне, просто они там релиз готовят, а мы им баги находим - неприятно ведь.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема при использовании LIKE с UNICODE в IB/FB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]