Поиск:

Ответ в темуСоздание новой темы Создание опроса
> В поля типа Varchar нельзя писать по русски! 
:(
    Опции темы
Ner-zul
  Дата 11.9.2006, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 232
Регистрация: 24.1.2004
Где: Москва

Репутация: нет
Всего: нет



Я пишу на Дельфи6. База у меня под InterBase7.1 на удаленном сервере.
 Я испоьзую компонент TTable. И вывожу из него информацию в DBGrid.

Также использую DBNavigator, привязанный к той же таблице. В итоге когда я жму вставить новую запись и заполняю поля то если я в поле Name ввожу русские символы, то при попытке завершить транзакцию, программа вылетает с ошибкой, что-то типа несоответствия типов. Я точно определил, что ошибка именно из-за этого! То есть тогда, когда я пытаюсь вставить новую запись, в одном из полей которой есть русские символы. Используя клиент IB я руками прописал несколько строк в эту таблицу и в поле Name намеренно написал русские символы. Все получилось(База использует кодировку win 1251). После этого опять запустил мою программу. Все хорошо. DBGrid отобразил новые строки с русскими символами в поле Name. Но при попытке отредактировать и сохранить такую строку опять вылетает та же ошибка о несоответствии типов. Другими словами программа никак не хочет вставлять в базу записи с русскими символами.

Подскажите пожалуйста в чем проблема?
--------------------
 Ner-zul   
PM MAIL ICQ   Вверх
SergeBS
Дата 11.9.2006, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



Ner-zul, 
Цитата

Обязательно указание:
1. Базы данных (Paradox, Oracle и т.п.)
2. Способа доступа (ADO, BDE и т.д.)

1. - есть. 2 - нет. Но судя по всему BDE - так настрой глюкало. А лучше перелазь на IBX. Здоровее будешь.
Цитата

вылетает с ошибкой, что-то типа несоответствия типов. 

Тоже "исчерпывающее" описание. На которое остается ответить: "ну так сделай что-то типа приведения типов".
Короче "ошибка в 17 строке".
PM MAIL   Вверх
Ner-zul
Дата 11.9.2006, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 232
Регистрация: 24.1.2004
Где: Москва

Репутация: нет
Всего: нет



Вот специально выкладываю скрин моей ошибки! там в тексте понятно что не может согласовать кодировки!



А как кстати посмотреть какой у меня способ доступа? и как перелезть на IBX ???

Это сообщение отредактировал(а) Ner-zul - 11.9.2006, 16:30

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  Errordb.GIF 9,36 Kb
--------------------
 Ner-zul   
PM MAIL ICQ   Вверх
SergeBS
Дата 11.9.2006, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



Ner-zul, 
Цитата

А как кстати посмотреть какой у меня способ доступа?

Выделить свой dataset и нажать F1. Там будет написано.

Цитата

 и как перелезть на IBX ???

Открыть закладку InterBase, а дальше выбирать компоненты, нажимать F1 и читать. Для начала.
Цитата

Вот специально выкладываю скрин моей ошибки! там в тексте понятно что не может согласовать кодировки!

Да ну? Способ доступа значит определить - проблема. А тут из 4 вариантов сразу верный нашел.  smile 
PM MAIL   Вверх
Ner-zul
  Дата 11.9.2006, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 232
Регистрация: 24.1.2004
Где: Москва

Репутация: нет
Всего: нет



Ну английский то я знаю...))

Цитата из ошибки:

"Cannot transliterate character between character  sets..."

И ссудя по тому что База у меня подключена через TIBDataBase, метод подключеня у меня IB....

Это сообщение отредактировал(а) Ner-zul - 11.9.2006, 16:54
--------------------
 Ner-zul   
PM MAIL ICQ   Вверх
Ner-zul
Дата 11.9.2006, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 232
Регистрация: 24.1.2004
Где: Москва

Репутация: нет
Всего: нет



А вот я и все нашел! Надо было в настройках объекта TIBDatabase установить charset в  win1251 !!!(для этого нужно дважды щелкнуть по этому объекту!)
 а он там по умолчанию  в  NONE !!!


...


эх , жаль я себе сам плюсик поставить не могу...
--------------------
 Ner-zul   
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0455 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.