Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.035 c
1-1109645574
msgipss
2005-03-01 05:52
2005.03.13
Подскажите интерпретаторы для использования в Delphi 6 и выше


1-1109678219
Doxygen
2005-03-01 14:56
2005.03.13
Файл или директория


14-1108895946
Delta
2005-02-20 13:39
2005.03.13
манифест Windows XP


1-1109361350
kami
2005-02-25 22:55
2005.03.13
OnClose или OnDestroy?


14-1109152797
olookin
2005-02-23 12:59
2005.03.13
Динамо - Авангард





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский