Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > AnsiString ->win1251 в Builder'e


Автор: Guest 27.12.2005, 10:31
Писал я себе под MySQL и горя не знал.
Понадобилось мне с InterBase поработать. Есть в запросе строка типа "WHERE name='Иванов'"
Так вот, возвращается ошибка мол не тот character set. С латинскими буквами все ОК. Лезу через монитор - в базе тип win1251.
Ну у меня в mysql тоже этот тип был и без проблем.
Даже незнаю как и спросить, но... короче что мне надо сделать в Builder'e с AnsiString, чтобы INterBase, работающий с полем типа win1251 понимал запрос?


Автор: _hunter 27.12.2005, 11:28
она и так в 1251... ты в параметры IBDatabase' а добавь lc_ctype=WIN1251

Автор: zarden 6.1.2006, 21:38
Народ, помогите!!!!!
не знаю что делать. Бьюсь уже третий день с прогой и ничего не выходит. Вот фрагмент кода:
Edit1->Text = ComboBox1->Items->Strings[ComboBox1->ItemIndex];
Edit2->Text = ComboBox2->Items->Strings[ComboBox2->ItemIndex];
Edit3->Text = StrToFloat(Edit1->Text) + StrToFloat(Edit2->Text);

при этом выскакивает ошибка:
Ambiguity between’_fastcall System::AnsiString::AnsiString(char)’ and ‘_fastcall System::AnsiString::AnsiString(short)’
функция StrToFloat используется потому что в качестве полей в компоненте Combobox и 1 и 2 используются нецелые (дробные) числа.
Подскажите пожалуйста что означает данная ошибка и как ее исправить или если мона, расскажите как мона по другому сделать так, чтобы считались дробные числа и результат выводился в Edit или схожий с ним компонент.
Заранее благодарен. Денис.

Автор: iddqd 9.1.2006, 18:06
Edit3->Text = FloatToStr(StrToFloat(Edit1->Text) + StrToFloat(Edit2->Text));

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)