![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Русский текст в FB [D6, FB1.0.3]
КаПиБаРа © (2004-10-12 08:48:00)Здравствуйте :)
Начал изучать FB. Читаю книжки, но пока в голове просветления нет.
Пытаюсь создать базу с таблицей в которой выполняется правильная сортировка/поиск русских символов.
При попытке внесения в поле NAME таблицы CUSTOMERS записи Ивановвыдается ошибка:
EIBInterBaseError with message 'arithmetic exception, numeric overflow, or string truncation
Cannot transliterate character between character sets'.
Создаю базу с помощью TIBDatabase:
IBDatabase1.Params.Add('USER ''SYSDBA''');
IBDatabase1.Params.Add('PASSWORD ''masterkey''');
IBDatabase1.Params.Add('PAGE_SIZE 4096');
IBDatabase1.Params.Add('DEFAULT CHARACTER SET WIN1251');
IBDatabase1.CreateDatabase;
И таблицу с помощью TIBQuery:
CREATE TABLE CUSTOMERS (
ID INTEGER NOT NULL,
NAME CHAR(30) COLLATE PXW_CYRL,
PRIMARY KEY (ID))
Данные вывожу и редактирую в DBGRID подключенному к TIBDataSet.
Настройка IBDataSet
SelectSQL
select * from customers
RefreshSQL
select * from customers
where
id = :id
ModifySQL
update customers
set
ID = :ID,
NAME = :NAME
where
ID = :OLD_ID
InsertSQL
insert into CUSTOMERS
(ID, NAME)
values
(:ID, :NAME)
Где грабли?
КаПиБаРа (2004-10-12 13:18:00) [1]Deniz © (12.10.04 12:23) [7]
Не беспокойся. Давно уже скачал.
Deniz (2004-10-12 12:23:00) [2]> КаПиБаРа © (12.10.04 08:48)
...
> Создаю базу с помощью TIBDatabase:
А слабо IBExpert скачать
http://www.ibexpert.com/rus/ibe_sfx.exe
для России бесплатен
Pul (2004-10-12 11:36:00) [3]Уточнение к [2]
CHARACTER SET WIN1251 COLLATE PXW_CYRL
КаПиБаРа (2004-10-12 09:21:00) [4]Johnmen © (12.10.04 9:09) [3]
Это при подключении
Понял этого то у меня и небыло.
Johnmen © (12.10.04 9:07) [2]
Море инфы ibase.ru
Читаю и оттуда тоже.
КаПиБаРа (2004-10-12 09:15:00) [5]stud © (12.10.04 9:06) [1]
IBDatabase1.Params.Add('lc_ctype=WIN1251');
При создании базы:
Dynamic SQL Error
SQL error code=-104
Token uncnown - line 4, char 1
lc_ctype.
Johnmen (2004-10-12 09:09:00) [6]>stud © (12.10.04 09:06) [1]
Это при подключении. Ест-но тоже надо указывать.
Johnmen (2004-10-12 09:07:00) [7]При создании поля тоже надо указать чарсет.
Море инфы ibase.ru
stud (2004-10-12 09:06:00) [8]
> IBDatabase1.Params.Add('DEFAULT CHARACTER SET WIN1251');
IBDatabase1.Params.Add('lc_ctype=WIN1251');