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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.08.2010, 07:40   #1
Liones
Пользователь
 
Аватар для Liones
 
Регистрация: 26.11.2008
Сообщений: 81
По умолчанию Динамический запрос IBQuery

И снова у меня возник вопрос. Почему не срабатывает динамический запрос?
В свойствах ParamCheck=True.
Запрос:
Код:
select  SPISOK.FIO, SPISOK.OTDEL, SPISOK.DOLG
from SPISOK, SPRAVKI
where (SPRAVKI.TAB_N=SPISOK.TAB_N) and (SPISOK.TAB_N=:TAB_N)
Код:
Код:
procedure TDM.IBDSSpravTAB_NChange(Sender: TField);
begin
DM.IBQSpisok.Prepare;
DM.IBQSpisok.ParamByName('TAB_N').AsInteger:=DM.IBDSSpravTAB_N.AsInteger;
DM.IBQSpisok.Open;
DM.IBDSSpravFIO.Value:=DM.IBQSpisokFIO.Value;
DM.IBDSSpravOTDEL.Value:=DM.IBQSpisokOTDEL.Value;
DM.IBDSSpravDOLG.Value:=DM.IBQSpisokDOLG.Value;
DM.IBQSpisok.Close;
end;
Liones вне форума Ответить с цитированием
Старый 05.08.2010, 08:30   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Э-э-э я ты что этим запросом то сделать хотел?
Может быть тебе нужно JOIN указывать для связки со SPRAVKI?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.08.2010, 08:48   #3
Karabash
Форумчанин
 
Регистрация: 26.07.2009
Сообщений: 216
По умолчанию

Первое, что видно. Запрос, если выполнится, вернет в общем случае множественный результат, а в коде присвоение значений происходит только из первой записи результата.
Хотелось бы осведомиться. А по каким признакам уважаемый автор понял, что "не срабатывает запрос"?
Karabash вне форума Ответить с цитированием
Старый 05.08.2010, 09:30   #4
Liones
Пользователь
 
Аватар для Liones
 
Регистрация: 26.11.2008
Сообщений: 81
По умолчанию

так, объясняю что я имела в виду, есть две таблицы: список документов и список сотрудников. В окне приложения отображается список введенных документов в виде таблицы: №, дата, табельный номер, ФИО, подразделение, должность и т.д.
Вот мне надо чтоб когда пользователь вводит новый документ при указании табельного номера из списка сотрудников сразу подставлялось ФИО, подразделение и должность.

зы: в списке документов я не пытаюсь хранить подразделение и должность, это нужно только для просмотра пользователем
Liones вне форума Ответить с цитированием
Старый 05.08.2010, 13:16   #5
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

а с чего в взяли что запрос динамический?
просто с параметрами

и для чего нужен вот этот код?
Код:
DM.IBDSSpravFIO.Value:=DM.IBQSpisokFIO.Value;
DM.IBDSSpravOTDEL.Value:=DM.IBQSpisokOTDEL.Value;
DM.IBDSSpravDOLG.Value:=DM.IBQSpisokDOLG.Value;
вы руками присваиваете значения из датасета датасурсу?
soleil@mmc вне форума Ответить с цитированием
Старый 06.08.2010, 06:44   #6
Liones
Пользователь
 
Аватар для Liones
 
Регистрация: 26.11.2008
Сообщений: 81
По умолчанию

"Компоненты IBDataSet, IBQuery и IBSQL могут выполнять как статический, так и динамический SQL. Динамический SQL отличается от статического наличием параметров......" (http://www.ibase.ru/devinfo/ibx.htm#ibquery) не я это придумала

Цитата:
Сообщение от soleil@mmc Посмотреть сообщение
а с чего в взяли что запрос динамический?
просто с параметрами

и для чего нужен вот этот код?
Код:
DM.IBDSSpravFIO.Value:=DM.IBQSpisokFIO.Value;
DM.IBDSSpravOTDEL.Value:=DM.IBQSpisokOTDEL.Value;
DM.IBDSSpravDOLG.Value:=DM.IBQSpisokDOLG.Value;
вы руками присваиваете значения из датасета датасурсу?
а почему нет?

Проблема решена, все время забываю, что ларчик просто открывается. Изменила запрос и все ок.
Код:
select  FIO, OTDEL, DOLG
from SPISOK where (TAB_N=:TAB_N)

Последний раз редактировалось Stilet; 06.08.2010 в 08:22.
Liones вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
динамический запрос access 2007 Тупой Microsoft Office Access 3 26.06.2009 17:52
Динамический запрос span4 SQL, базы данных 13 30.05.2009 02:13
Ошибка в IBQuery.SQL Art_ БД в Delphi 7 12.05.2009 00:44
Динамический запрос kaizer131 Microsoft Office Access 6 03.04.2009 22:23
Filter в IBQuery Yurk@ БД в Delphi 3 23.01.2009 23:26