Форум: "Начинающим";
Текущий архив: 2009.11.29;
Скачать: [xml.tar.bz2];
Внизгде ошибка в запросе? Найти похожие ветки
← →
xyz (2009-10-15 14:05) [0]Есть sql-запрос:
select [Типы товара].[Тип товара], Товар.Наименование, Имущество.Количество
from [Типы товара], Товар, Имущество m1
where (m1.[код товара]=Товар.[код товара]) and
([Типы товара].[код типа товара]=Товар.[Код типа товара]) and
(m1.[дата/время]=(select min(m2.[дата/время]) from Имущество m2
where (m1.[№ склада]=m2.[№ склада]) and (m1.[код товара]=m2.[код товара])
and (m1.[дата/время]=m2.[дата/время])
and (m2.[дата/время]>:dat)))
В таблице "Имущество" ключевое поле составное, поэтому так много сравнений. От него требуется вывод количества товара, кот. было на складе на начало даты, записанной в параметре dat компонента adoquery. (Предполагается, что в таблице существует запись на эту дату). Я пробовал этот запрос в разных вариациях, но везде получал ошибку:
"отсутствует значение для одного или нескольких требуемых параметров". Сам этот параметр я не забываю установить таким образом:adoquery1.Parameters.ParamByName("dat").Value:=datetimepicker1.DateTime;
Какой еще параметр ему нужен?
Сами таблицы такие:
"Имущество" с полями:
№ склада (ключевое)
код инвентаря (кл.)
количество
дата/время (кл.)
"Товар" с полями:
Наименование
Код типа товара
Код товара (кл.)
"Типы товара" с полями:
Тип товара
Код типа товара (кл.)
БД - Access
← →
sniknik © (2009-10-15 14:15) [1]> где ошибка в запросе?
знаки препинания неверно расставил... надо так -
где ошибка? в запросе! :)
> БД - Access
> "отсутствует значение для одного или нескольких требуемых параметров".
все что jet не определяет, не находит в полях, он считает за параметр. в самом access-е (программе) по такой ошибке всплывает окно для вводе значения.
выполни для проверки запрос там.
и кстати
> :dat)
напиши с пробелом, так :dat ), были вопросы с подобным, у кого то не определялся последний параметр если после него что то стоит впритык. (хотя это вряд ли)
← →
xyz (2009-10-15 14:28) [2]Я его выполнил в access"е, оказалось, что Имущество.Количество - это тоже параметр (с его точки зрения). Но мне-то его нужно как данность вывести
← →
Медвежонок Пятачок © (2009-10-15 14:34) [3]оказалось, что Имущество.Количество - это тоже параметр
надо в это верить
← →
xyz (2009-10-15 14:36) [4]Вообще, если добавить в select любое другое поле из таблицы "Имущество", то и оно тоже делается параметром. Глюк?
← →
Sergey13 © (2009-10-15 14:40) [5]> [0] xyz (15.10.09 14:05)
> select [Типы товара].[Тип товара], Товар.Наименование, Имущество.Количество
> from [Типы товара], Товар, Имущество m1
может так?
select [Типы товара].[Тип товара], Товар.Наименование, m1.Количество
from [Типы товара], Товар, Имущество m1
← →
Медвежонок Пятачок © (2009-10-15 14:41) [6]Это ошибка в имени таблицы или очередное напоминание всем эстетам, дающим русские имена объектам бд.
← →
xyz (2009-10-15 14:51) [7]
> может так?
> select [Типы товара].[Тип товара], Товар.Наименование, m1.
> Количество
> from [Типы товара], Товар, Имущество m1
Работает, но неправильно. Выдает все записи, которые >dat, независимо минимум это или нет.
← →
Медвежонок Пятачок © (2009-10-15 14:56) [8]ну так dat то участвует в условии подзапроса а не в основном условии
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.11.29;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c