Вопросы стыковки визуальных компонент (DataControls, EhGrid, VirtualTreeView, DevExpress и т.п.) с данными из БД.
Модераторы: kdv, CyberMax
-
Zhekius
- Сообщения: 25
- Зарегистрирован: 08 июл 2008, 14:57
Сообщение
Zhekius » 17 авг 2010, 08:02
Всем привет. Нашёл такой глюк. Если в компоненте TIBDataSet в свойстве SelectSQL написать запрос при проектировании, то запрос прокатывает хорошо и понятно. Кодировка в TIBDataBase lc_ctype = UNICODE_FSS. Но как только начинаю формировать динамически запросы через SelectSql.add(), то вылазиет ошибка типа
Код: Выделить всё
arithmetic exception, numeric overflow, or string truncaction. Cannot transliterate character between character set
.
Сервер FireBird 2.1. В IBExpert'e все вроде хорошо. А при работе в Delphi 2009 такая вот лажа.
Где проблема? В Сервере? Или в компоненте? Как быть? Чего можно сделать с кодировкой?
-
Dimitry Sibiryakov
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Сообщение
Dimitry Sibiryakov » 17 авг 2010, 14:44
В руках. Если кодировка подключения UNICODE_FSS, то и отсылаемые запросы должны быть в кодировке UNICODE_FSS. Ну или использовать интродусер чарсета для строковых констант.
-
Zhekius
- Сообщения: 25
- Зарегистрирован: 08 июл 2008, 14:57
Сообщение
Zhekius » 17 авг 2010, 14:58
Дмитрий, так и думал, что при постановке такого вопроса будет какой-нибудь такой ответ
А можно пример использования
интродусера чарсета для строковых констант
. Не врубился немного )