Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.05.2010, 08:34   #1
Alkatras
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 24
По умолчанию Field not found

Доброго времени суток коллеги! Проблема заключается в следующем
При выполнении кода:

Код:
f01:=ComboBoxAddTab.Text;
Form2TB.QueryOrgFind.Open;
while not Form2TB.QueryOrgFind.Eof do begin
if Form2TB.QueryOrgFind.FieldByName('Name').AsString=f01 then begin
Form2TB.label19.caption:=Form2TB.QueryOrgFind.FieldByName('Type').AsString;
Form2TB.QueryOrgFind.Close;
                                                                                       end
else
Form2TB.QueryOrgFind.Next;
                                                     end;
Form2TB.QueryOrgFind.Close;
Вылетает ошибка:
QueryOrgFind:Field 'Type' not found

Как можно решить эту проблему? Заранее спасибо...

Последний раз редактировалось Stilet; 26.05.2010 в 08:04.
Alkatras вне форума Ответить с цитированием
Старый 25.05.2010, 08:40   #2
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,194
По умолчанию

Значит нет такого типа в БД. Либо название написано неверною.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 25.05.2010, 10:14   #3
Alkatras
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 24
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Значит нет такого типа в БД. Либо название написано неверною.
В данном случае Type это название столбца в таблице так же как и Name.
Пробовал искать по другим столбцам, меняя тип переменных, такую же ошибку выдает.
Alkatras вне форума Ответить с цитированием
Старый 25.05.2010, 10:43   #4
Lokos
Форумчанин
 
Регистрация: 29.09.2009
Сообщений: 587
По умолчанию

Цитата:
Сообщение от Alkatras Посмотреть сообщение
В данном случае Type это название столбца в таблице так же как и Name.
Пробовал искать по другим столбцам, меняя тип переменных, такую же ошибку выдает.
почему бы не выполнить такой поиск selectom
это будет намного проще чем делать подобный цикл.
И если ты делаешь циклом то лучше добавить такую строчку до него
Код:
Form2TB.QueryOrgFind.fierst;
p.s. не помню как fierst правильно пишется
А ошибка потому что нет такого поля или оно пустое.
Lokos вне форума Ответить с цитированием
Старый 25.05.2010, 11:40   #5
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Правильно так First
Просто в таблице нет поля с именем "Type"...
Ну, а я полагаю, что слово "Type" все же относится к зарезервированным словам языка и лучше с ним не играться!!!
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 25.05.2010 в 11:44.
Grag вне форума Ответить с цитированием
Старый 25.05.2010, 12:45   #6
Alkatras
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 24
По умолчанию

Цитата:
Сообщение от Alkatras Посмотреть сообщение
Пробовал искать по другим столбцам, меняя тип переменных, такую же ошибку выдает.
Поле Type есть в таблице. В цикл подставлял поля Id, Region, которые также есть в таблице, ошибка аналогичная(
Alkatras вне форума Ответить с цитированием
Старый 25.05.2010, 13:33   #7
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Ну дык вы в квери ваш добавьте все поля для начала. Двойной клик по квери - появится редактор полей -в этом редакторе клик правой кнопкой мыши и из контекстного меню выбираем пункт добавить все поля (Add All Fields)
Предварительно в инспекторе объектов в св-ве SQL вашего квери напишите что то вроде Select * from ИмяТаблицы. Только после этого вам будут доступны поля

Последний раз редактировалось SERG1980; 25.05.2010 в 13:46.
SERG1980 вне форума Ответить с цитированием
Старый 25.05.2010, 13:49   #8
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

Цитата:
Сообщение от SERG1980 Посмотреть сообщение
Ну дык вы в квери ваш добавьте все поля для начала. Двойной клик по квери - появится редактор полей -в этом редакторе клик правой кнопкой мыши и из контекстного меню выбираем пункт добавить все поля (Add All Fields)
Предварительно в инспекторе объектов в св-ве SQL вашего квери напишите что то вроде Select * from ИмяТаблицы. Только после этого вам будут доступны поля
это точно лишнее
потом ТС устанет искать почему у него не читаются поля, которые он добавит в квери, а не добавит в статические поля квери

2 Alkatras
Покажите текст квери Form2TB.Qu eryOrgFind
soleil@mmc вне форума Ответить с цитированием
Старый 26.05.2010, 06:17   #9
Alkatras
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 24
По умолчанию

Решил проблему по другому. Спасибо всем за советы!

2 SERG1980
Добавить поля в квери не получится. Алиас присваивается программно, а не изначально.
Alkatras вне форума Ответить с цитированием
Старый 26.05.2010, 06:51   #10
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,194
По умолчанию

Цитата:
Алиас присваивается программно, а не изначально.
Вместо этого используйте ExtractFilePath
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Field not found New_One1603 БД в Delphi 3 11.04.2011 23:42
lookup information for field driveriwka Помощь студентам 0 23.05.2010 01:46
Динамическое создание таблиц.Invalid field size Студло Помощь студентам 4 30.03.2010 08:30
Ошибка: Invalid value for field... (ADO) Кот из Лета БД в Delphi 5 26.12.2007 14:02