Главная страница
    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.037 c
3-1107869990
denis24
2005-02-08 16:39
2005.03.13
select ..... from .... where name in (........


4-1105693199
Антоныч
2005-01-14 11:59
2005.03.13
Путь к временному каталогу Windows


6-1105213067
Alexander Makhanev
2005-01-08 22:37
2005.03.13
Как узнать, находится ли комп в домене?


11-1091773043
tp
2004-08-06 10:17
2005.03.13
Гиганский размер exe-шника.


14-1108573257
Sour
2005-02-16 20:00
2005.03.13
Motorola mpx200





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский