![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
IBQuery проблема с текстовыми вычисляемыми полями! [D6]
EugeneCher © (2002-06-19 16:28:00)Здравствуйте! Сабственно сабж. Пишу
Select Table.Field1+" "+Table.Field2
From Table
а оно ругается и не работает. Тоже самое в обычном TQuery работает прекрасною Может я чего не знаю? Подскажите!
EugeneCher (2002-06-21 08:57:00) [1]Точно! Так оно и было! Спасибо большое, поправил и все исправно трудится.
kaif (2002-06-21 03:54:00) [2]Это не сообщение об ошибке с сервера. Это исключение генерит DataSet. Скорее всего ты создал persistent-поля TField (те, что на стадии проектирования создаются) и поле для APP у тебя случайно типа TFloatField. Удали все persistent поля у IBQuery и посмотри.
APP - алиас этого "сборного" поля, как я понял. Скорее всего у тебя ситуация именно такая. Можно еще runtime проверить:
Поставь TButton и в OnClick впиши:
if IBQuery.FieldByName("APP") is TNumericField then
ShowMessage("что-то у меня не так с типом TField");
EugeneCher (2002-06-20 21:29:00) [3]Никак не могу понять, что же я не правильно делаю!
Пишу
select VLAEDL, NN, DAT_POL, TIPUST, ADRES, COD, TEL, FIRMA || " " || MODEL APP
from COP
inner join VLA
on (VLAEDL=VL)
В результате ошибка
IBQuery: Type mismatch for field "APP", expecting: Float actual: String
Как сие можно побороть?
kaif (2002-06-20 02:29:00) [4]С кавычками у тебя все в порядке?
В принципе, стоит при конкатенациях и тип поля устанавливать с помощью CAST.
Например:
SQL.Text :=
"SELECT CAST(""Вася""||"" ""||""Иванов"" AS VARCHAR(100)) FROM TABLE1";
EugeneCher (2002-06-19 23:04:00) [5]Пишу
SELECT NN, DAT_POL,
"Первый" || TIPUST || " " || FIRMA || " " || MODEL || " Второй " || SER || " и " || VLAEDL || ", последний " || ADRES || "." text
FROM Cop
INNER JOIN Vla
ON (VLAEDL = VL)
where (NN=:par)
а оно ругается на несоответствие типов, поле text получается почему-то типа float!
EugeneCher (2002-06-19 23:01:00) [6]Пишу
SELECT NN, DAT_POL,
"Первый" || TIPUST || " " || FIRMA || " " || MODEL || " Второй " || SER || " и " || VLAEDL || ", последний " || ADRES || "." text
FROM Cop
INNER JOIN Vla
ON (VLAEDL = VL)
where (NN=:par)
а оно ругается на несоответствие типов, поле text получается почему-то типа float!
OlegE (2002-06-19 16:46:00) [7]Select Table.Field1 || " " || Table.Field2 From Table