Форум: "Базы";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];
ВнизIBQuery проблема с текстовыми вычисляемыми полями! Найти похожие ветки
← →
EugeneCher (2002-06-19 16:28) [0]Здравствуйте! Сабственно сабж. Пишу
Select Table.Field1+" "+Table.Field2
From Table
а оно ругается и не работает. Тоже самое в обычном TQuery работает прекрасною Может я чего не знаю? Подскажите!
← →
OlegE (2002-06-19 16:46) [1]Select Table.Field1 || " " || Table.Field2 From Table
← →
EugeneCher (2002-06-19 23:01) [2]Пишу
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:04) [3]Пишу
SELECT NN, DAT_POL,
"Первый" || TIPUST || " " || FIRMA || " " || MODEL || " Второй " || SER || " и " || VLAEDL || ", последний " || ADRES || "." text
FROM Cop
INNER JOIN Vla
ON (VLAEDL = VL)
where (NN=:par)
а оно ругается на несоответствие типов, поле text получается почему-то типа float!
← →
kaif (2002-06-20 02:29) [4]С кавычками у тебя все в порядке?
В принципе, стоит при конкатенациях и тип поля устанавливать с помощью CAST.
Например:
SQL.Text :=
"SELECT CAST(""Вася""||"" ""||""Иванов"" AS VARCHAR(100)) FROM TABLE1";
← →
EugeneCher (2002-06-20 21:29) [5]Никак не могу понять, что же я не правильно делаю!
Пишу
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-21 03:54) [6]Это не сообщение об ошибке с сервера. Это исключение генерит DataSet. Скорее всего ты создал persistent-поля TField (те, что на стадии проектирования создаются) и поле для APP у тебя случайно типа TFloatField. Удали все persistent поля у IBQuery и посмотри.
APP - алиас этого "сборного" поля, как я понял. Скорее всего у тебя ситуация именно такая. Можно еще runtime проверить:
Поставь TButton и в OnClick впиши:
if IBQuery.FieldByName("APP") is TNumericField then
ShowMessage("что-то у меня не так с типом TField");
← →
EugeneCher (2002-06-21 08:57) [7]Точно! Так оно и было! Спасибо большое, поправил и все исправно трудится.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c