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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2012, 19:00   #1
brednew
Пользователь
 
Регистрация: 10.09.2012
Сообщений: 24
По умолчанию Не идет запрос с 2-мя параметрами

Уважаемые программисты доброго времени суток.
у меня такая проблема, делаю запрос по 2-м параметрам, но при запуске он не работает, причину не пойму. у меня сделаны запросы по каждому из параметров, они идут, где я допустил ошибку?

select KOD_SOTRUDNIKA, familiya,mesyaz, (oklad+(oklad+oklad/175*RAB_VIH_DEN_DNEY)*razm_premii/100+(oklad/175*RAB_VIH_DEN_DNEY*2)+(oklad/12*VISLUGA_PROC)+(KOMPENS_EL+oklad+ oklad/175*RAB_VIH_DEN_DNEY*2+oklad/12*VISLUGA_PROC)*15/100)oplata
from nadbavki n, personal p, zar_plata z where n.KOD_SOTRUDNIKA=p.KOD_SOTRUDNIKA and p.OTDEL=z.OTDEL and familiya=:fam and mesyaz=:mes;

суть в том что запрос большой, но мне необходимо в запросе указать по какому сотруднику выводится зарплата и в какой месяц, в итоге у нас получится всего одна строка в запросе
brednew вне форума Ответить с цитированием
Старый 27.10.2012, 19:25   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

......15/100)oplata - ???
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2012, 20:16   #3
brednew
Пользователь
 
Регистрация: 10.09.2012
Сообщений: 24
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
......15/100)oplata - ???
ну да, это поле для вычисления
brednew вне форума Ответить с цитированием
Старый 27.10.2012, 20:21   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
ну да, это поле для вычисления
Псевдоним, что ли? И ошибки синтаксиса нет в этом месте?
Цитата:
при запуске он не работает
В чем выражается это? Если ошибка, то какая, или возвращает не то, что ожидалось?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2012, 20:34   #5
brednew
Пользователь
 
Регистрация: 10.09.2012
Сообщений: 24
По умолчанию

запрос построен в делфи, суть ошибки выдается тока в этих 2 параметрах, при использовании их по отделности запрос работает. при вводе фамилии и месяца при нажатии на вычисление в DBGrid ничего не находится
brednew вне форума Ответить с цитированием
Старый 27.10.2012, 20:37   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Так может просто не находит, что бы и familiya и mesyaz одновременно удовлетворяли заданному условию. И покажите как параметры задаете
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2012, 20:42   #7
brednew
Пользователь
 
Регистрация: 10.09.2012
Сообщений: 24
По умолчанию

Код:
procedure TForm7.Button3Click(Sender: TObject);
var fam,mes:string;
begin
DataModule8.IBQuery1.ParamByName('fam').asString:=edit2.text;
DataModule8.IBQuery1.ParamByName('mes').AsString:=edit3.text;
Datamodule8.IBQuery1.Active:=True;
end;
вставляю абсолютно те параметры из таблицы которые там есть Н-р Иванов - январь
brednew вне форума Ответить с цитированием
Старый 27.10.2012, 20:48   #8
brednew
Пользователь
 
Регистрация: 10.09.2012
Сообщений: 24
По умолчанию

Извиняюсь за неудобства, сейчас прошелся по всем компонентам моей программы, оказалось что на форме с указанием пути к бд активировался запрос, а следовательно запустить второй раз его нельзя, вот он и был пуст, сейчас все исправил, все работает
brednew вне форума Ответить с цитированием
Старый 27.10.2012, 20:51   #9
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

В начале выполнить IBQuery1.Active:=False
Не помешало бы и текст запроса обновить в SQL
А потом присвоение параметров и IBQuery1.Active:=True
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2012, 20:54   #10
brednew
Пользователь
 
Регистрация: 10.09.2012
Сообщений: 24
По умолчанию

т. е. с такой комбинацией можно несколько раз делать запрос?
brednew вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
запрос с параметрами chui БД в Delphi 22 03.11.2011 11:16
Запрос с параметрами us4us SQL, базы данных 1 20.05.2011 05:53
SQL запрос. Не выводит строки, где в одном поле присутствует NULL, хотя идет проверка lyle_200490 SQL, базы данных 7 07.04.2011 22:41
программа с типизированными параметрами-значениями и параметрами-переменными Kira09 Паскаль, Turbo Pascal, PascalABC.NET 1 20.12.2010 22:23
Запрос с изменяющимися параметрами GenniY БД в Delphi 10 18.03.2010 14:41