#1
  1. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2003
    Location
    Russia
    Posts
    1
    Rep Power
    0

    Question Problems using LIKE with UNICODE in FB/IB


    Hi!
    I have DB. Its definition part is below.
    Code:
    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
      /* ... */
    );
    The problem occures when doing statements like this:
    Code:
    SELECT * FROM ROOMS WHERE NAME LIKE 'string_in_russian%'
    When starting the statement, FireBird/InterBase server goes down (under MS Windows, I tried IB6, FB1, FB1.5RC6). If I use 'string_in_english' instead of 'string_in_russian', the query returns right rows. The query returns right rows when DEFAULT CHARACTER SET is WIN1251. Query like
    Code:
    SELECT * FROM ROOMS WHERE UPPER(NAME) LIKE UPPER('STRING_IN_RUSSIAN%')
    (that's right: UPPER('STRING_IN_UPPER') - it described in bugs/features of FB1 as I remember) returns all rows where NAME contains cyrillic symbols. The same result (rows with all cyrillic names) when doing statement
    Code:
    SELECT * FROM ROOMS WHERE NAME LIKE 'string_in_russian%' COLLATE UNICODE_FSS
    Question: can I fix that myself? If yes, please show me how. If no, please give me an idea of construction to substitute the statements above. (I have to use UNICODE_FSS because I am going to distribute the database in various countries.)
  2. #2
  3. Bug Hunter
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2003
    Location
    Transylvania (Romania)
    Posts
    309
    Rep Power
    23
    I'm quite new to unicode thing don't know how to help , have you tried the support list or the developers ones? there are people who use unicode for various languages ...

IMN logo majestic logo threadwatch logo seochat tools logo