Форум: "Базы";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
ВнизОшибка при запросе Найти похожие ветки
← →
Bogdan (2005-02-12 12:12) [0]Здравствуйте. Вот такая проблема, непойму почему выдает ошибку Field "p1" not Found. При запросе:
SELECT*
FROM tab1
INNER JOIN "Name1.DB"Name1
ON(Tab1.Name1ID=Name1.ID)
WHERE Name1ID=:p1
Параметру p1 присвоил тип данных ftInteger
Буду благодарен за ответ.
← →
YurikGL © (2005-02-12 13:28) [1]Если не ошибаюсь, подобные ошибки возникают, когда у датасета уже есть созданные поля и они не соответсвуют запросу. Т.е. если однажды в датасете в дезигн-моде задали запрос типа slect p1 from...., потом active:=true, дважды кликаем на датасет и в появившемся поле говорим "Add all fields" (в списке появляется только p1), а после всего этого меняем наш запрос на другой и снова пытаемся active:=true то получаем ошибку "Field "p1" not Found"
← →
Desdechado © (2005-02-12 15:20) [2]тип присвоил, а значение не забыл?
← →
Bogdan (2005-02-12 16:34) [3]Опять проблема, выдает ошибку Type mismatch in expression.
Select*
From Tab1
Where NameID=:p1 по связаному полю
если делать запрос по другой таблице
Select*
From Tab2
Where Name=:p1 все нормально
← →
Desdechado © (2005-02-12 16:48) [4]наверно NameID - число, а Name - строка?
тогда результат зависит от того, что присваиваешь
← →
Bogdan (2005-02-12 17:05) [5]>наверно NameID - число, а Name - строка?
тогда результат зависит от того, что присваиваешь
В первом случае параметру присваивал ftInteger-выдает ошибку,хотя поле NameID типа Integer
Во втором присваивал ftString-все нормально, запрос работает.
← →
Bogdan (2005-02-12 17:23) [6]Может связаному полю вообще нельзя присвоить параметр???
← →
Desdechado © (2005-02-12 18:06) [7]что такое связанное поле? если lookup (подставное), то сервер о нем не знает, посему и ошибка
← →
Bogdan (2005-02-12 18:15) [8]>что такое связанное поле? если lookup (подставное), то сервер о нем не знает, посему и ошибка
NameID ключ записи из таблицы Name1.DB
INNER JOIN "Name1.DB"Name1
ON(Tab1.Name1ID=Name1.ID)
← →
Desdechado © (2005-02-12 18:22) [9]попробуй так, а то с Inner join как-то коряво:
SELECT t.*, name1.* FROM tab1 t, "Name1.DB" Name1
WHERE t.Name1ID=:p1 AND T.Name1ID = Name1.ID
Но даже в твоем варианте должно работать. Попробуй с нуля кинуть Query на форму и настроить в нем все. Имхо, ты во время экспериментов что-то где-то ткнул и забыл убрать.
← →
Bogdan (2005-02-12 18:56) [10]>Desdechado ©
Спасибо! Все О!!!кей.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.037 c