![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка в представлении [D5, firebird]
Alek_1 © (2004-10-25 01:27:00)Делаю вот такое вот представление:
SELECT
sp_status.SP_STATUS,
flat.FLAT_KOL_KOMNAT||'/'||sp_tip_flat.SP_TIP_FLAT,
sp_raion.SP_RAION||'/'||sp_masiv.SP_MASIV,
sp_street.SP_STREET||' '||razpol.RAZPOL_NHOUSE,
flat.FLAT_SQ_OBSH||'/'||flat.FLAT_SQ_LIVES||'/'||flat.FLAT_SQ_KITCHEN,
dom.DOM_ETAJ||'/'||dom.DOM_ETAJNOST||'/'||sp_material_sten.SP_MATERIAL_STEN,
obsh.OBSH_STOIMOST||' '||sp_curency.SP_CURENCY,
obsh.OBSH_STOIMOST1MKV||' '||sp_curency.SP_CURENCY,
obsh.KOD
FROM
obsh, dom, sp_curency, sp_material_sten, sp_street,
razpol, sp_masiv, sp_raion, sp_status, sp_tip_flat, flat
WHERE
obsh.ID_RECORD = dom.ID_RECORD AND
obsh.ID_RECORD = razpol.ID_RECORD AND
obsh.ID_RECORD = flat.ID_RECORD AND
obsh.OBSH_STATUS = sp_status.SP_STATUS_ID AND
dom.DOM_MATERIAL_STEN = sp_material_sten.SP_MATERIAL_STEN_ID AND
flat.FLAT_TIP_FLAT = sp_tip_flat.SP_TIP_FLAT_ID AND
obsh.OBSH_CURRENCY = sp_curency.SP_CURENCY_ID AND
razpol.RAZPOL_RAION = sp_raion.SP_RAION_ID AND
razpol.RAZPOL_MASIV = sp_masiv.SP_MASIV_ID AND
razpol.RAZPOL_STREET = sp_street.SP_STREET_ID
и на выделеной строчке он ругается "arithmetic exception, numerc overflow, or string trunscation"
Если убираю эту строчку то все работает, если делаю вместо той строки вот такую flat.FLAT_SQ_OBSHто тоже все ок.
Немогу понять в чем проблема и почему он неможет выполнить запрос.
Использую FileBird
поля в той строке типа float
Если кто знает подскажите плизз )
Alek_1 (2004-10-25 20:04:00) [1]да все данные привел вроде
Johnmen (2004-10-25 10:49:00) [2]>ЮЮ © (25.10.04 10:46) [9]
Работает работает. И так и сяк...
>Alek_1 (25.10.04 10:40) [8]
Ошибки быть не должно в указанных условиях.
Значит какие-то исх.данные ты не привел...
ЮЮ (2004-10-25 10:46:00) [3]>А у него встроено неявное преобразование типов
значит не да тоеой степени, раз string + float работает, а float + string - нет.
попробуй
''||flat.FLAT_SQ_OBSH ...
Alek_1 (2004-10-25 10:40:00) [4]Так что никто с таким не сталкивался?
Подскажите хоть в чем может заключаться ошибка?
Alek_1 (2004-10-25 10:29:00) [5]Вообщето представление делается на сервере БД (ФайрБерд) а не в делфи, в программе!
Johnmen (2004-10-25 10:29:00) [6]>ЮЮ © (25.10.04 10:25) [5]
Да, не на Васе, а на FB. А у него встроено неявное преобразование типов.
Alek_1 (2004-10-25 10:25:00) [7]Конечно уверен!!!
CREATE VIEW OBSH_VIEW(STATUS,NKOMNAT_TIPFLAT,RAION_MASIV,STRETT_NHOUSE,SQOBSH_SQLIVES_SQKITCHEN,ETAJ_ETAJNOST_MATERIALSTEN,STOIMIST_ CURRENCY,ST1MKV_CURRENCY,KOD)
AS
SELECT ... описано выше
ЮЮ (2004-10-25 10:25:00) [8]А что, в Delphi такое проватывает?
var
a, s: string;
d: double;
begin
s := 'Пушкинская';
d := 20;
a := s + d;
???
Преобразование типов делать надо, не в Васике работаешь :)
Johnmen (2004-10-25 10:19:00) [9]>Alek_1
А ты уверен, что у тебя FB ? :)
И укажи алиас для данного поля.
Alek_1 (2004-10-25 10:14:00) [10]FLAT_SQ_OBSH - float
FLAT_SQ_LIVES - float
FLAT_SQ_KITCHEN - float
jack128 (2004-10-25 02:19:00) [11]Alek_1 (25.10.04 1:27)
flat.FLAT_SQ_OBSH||'/'||flat.FLAT_SQ_LIVES||'/'||flat.FLAT_SQ_KITCHEN
типы полей бы не помешали..