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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.10.2009, 07:47   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
Вопрос Firebird. Выборка записей. Вопрос про DBGridEh.

Столкнулся с такой непоняткой. В IBExpert-e создал такой запрос:
Код:
select familiy,imy,otchest from classname,spisok where ((classname.id = spisok.kl) and (kl = 1))
То есть "выбрать всех учеников, у которых ID класса равен 1". В SQL Builder-e запрос этот работает безупречно. Но когда я пытаюсь сделать такой запрос программно, вот так:
Код:
procedure TForm2.sBitBtn8Click(Sender: TObject);
begin
 Form2.pFIBQuery4.SQL.Clear;
 Form2.pFIBQuery4.SQL.Text:='SELECT FAMILIY,IMY,OTCHEST,KL FROM SPISOK,CLASSNAME WHERE ((CLASSNAME.ID=SPISOK.KL) AND (Kl='+Form2.sWebLabel10.Caption + '))';
 Form2.pFIBQuery4.ExecQuery;
end;
То в DBGridEh не выводится ничего. Почему? Что я делаю не так? DBGridEh настроен на DataSource. DataSource настроен на pFIBDataSet4. pFIBDataSet4 настроен на pFIBDatabase4. pFIBQuery4 настроен на pFIBDatabase4.

P.S. Если написать, чтобы выводился результат в Label, то все выводится правильно.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.

Последний раз редактировалось artemavd; 17.10.2009 в 08:16. Причина: добавил
artemavd вне форума Ответить с цитированием
Старый 17.10.2009, 08:57   #2
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

данные находятся в pFIBQuery4, а грид отображает то что находится в pFIBDataSet4
vovk вне форума Ответить с цитированием
Старый 17.10.2009, 09:13   #3
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

А как изменить то? Что нужно перенастроить?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 17.10.2009, 09:21   #4
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

можно этот запрос просто писать в pFIBDataSet4
vovk вне форума Ответить с цитированием
Старый 17.10.2009, 09:23   #5
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

В смысле в свойстве SQL?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 17.10.2009, 09:52   #6
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

pFIBDataSet4.SQLs.SelectSQL.Text
vovk вне форума Ответить с цитированием
Старый 17.10.2009, 10:00   #7
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Прописал такой запрос:
Код:
select familiy,imy,otchest from spisok
Выдалась ошибка как на скрине по нажатию на кнопку ОК.
Изображения
Тип файла: bmp 111.bmp (136.6 Кб, 132 просмотров)
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 17.10.2009, 10:21   #8
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

выложи код который выполняется по нажатию кнопки ок
vovk вне форума Ответить с цитированием
Старый 17.10.2009, 10:27   #9
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Код выполнения запроса:
Код:
procedure TForm1.sBitBtn5Click(Sender: TObject);
begin
 Form1.pFIBQuery3.SQL.Clear;
 Form1.pFIBQuery3.SQL.Text:='SELECT FAMILIY,IMY,OTCHEST,KL FROM SPISOK,CLASSNAME WHERE ((CLASSNAME.ID=SPISOK.KL) AND (Kl='+Form1.sWebLabel10.Caption + '))';
 Form1.pFIBQuery3.ExecQuery;
end;
На скрине код в свойстве pFIBDataSet4.SQLs.SelectSQL.Text
Изображения
Тип файла: jpg 111.jpg (120.0 Кб, 149 просмотров)
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.

Последний раз редактировалось artemavd; 17.10.2009 в 10:29.
artemavd вне форума Ответить с цитированием
Старый 17.10.2009, 11:12   #10
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

1. вместо
Код:
Form1.pFIBQuery3.ExecQuery;
должно быть
Код:
Form1.pFIBQuery3.Open;
2. у тя в коде pFIBDataSet4.SQLs.SelectSQL.Text нет слова FROM
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Firebird. Обновление записей artemavd БД в Delphi 4 16.10.2009 16:16
Обновлаение и отображение записей в dbgrideh artemavd БД в Delphi 1 18.07.2009 18:18
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
У меня вопрос про базы данных,а точнее про таблицы!!! Alexij Общие вопросы Delphi 1 13.04.2008 23:24
Вопрос по DBGridEh Cyn4uk Компоненты Delphi 1 01.01.2008 11:19