![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Firebird и текстовое вычисляемое поле [D7, XP]
ixen © (2012-09-28 11:52:00)Здравствуйте! Имеется база Firebird 2.5 . Через IBExpert в таблице создал вычисляемое поле которое берет из 2-х таблиц текстовое значение. В IBExpert значение вычисляемого поля отображается нормально. В программе в гриде подключил это поле, но значения пустые. вот скрипт вычисляемого поля.
VARCHAR(5) CHARACTER SET WIN1251
COMPUTED BY ((select short_name from mery_izm where id=(select izm_id from tov_usl where id=why_id)))
причем вычисляемое поле которое дает числовое значение отображается в гриде программы нормально. В чем проблема?
ixen (2012-09-29 07:27:00) [1]сорри ребята... в проге я оказывается SelectSQL у датасета меняю программно, а там это поле не прописано...
ixen (2012-09-29 07:18:00) [2]ребята.. если к этому полю из программы обратится напрямую
procedure TFusluga_card.Button1Click(Sender: TObject);
begin
ShowMessage(Fmain.mat_s_dset.FieldByName('mera_name').AsVariant);
end;
пишет ошибку
---------------------------
---------------------------
mat_s_dset: Field 'mera_name' not found.
---------------------------
ОК
---------------------------
не видит поле.. хотя в датасете он прописан ...
Ega23 (2012-09-28 14:43:00) [3]
> значит косяк с кодировкой.
Не обязательно.
Что будет, если
select izm_id from tov_usl where id=why_id
вернёт пустую выборку?
cobalt (2012-09-28 14:35:00) [4]значит косяк с кодировкой.
как определено поле "short_name"?
cobalt (2012-09-28 14:35:00) [5]плюс еще:
какой чарсет по-умолчанию у БД
и с какими параметрами подключаешься к БД?
Win1251 указываешь?