Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Передача параметра в TADODataset / 12 сообщений из 12, страница 1 из 1
12.05.2003, 14:05
    #32157497
McAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
D5 + Access97 + TADODataset
использую запрос "SELECT...HAVING myField in (:myParameter);"
myField - целочисленное поле.
myParameter - я поставил строковый тип
Если параметр одно чило(например, "92"), то работает ,
если несклолько ("92,12,33"), то запрос работает но не работает HAVING .
Этот же запрос в самом Аксесе работает без проблем.

Как быть ?
...
Рейтинг: 0 / 0
12.05.2003, 15:03
    #32157580
LG
LG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Вроде все честно ...
Проверь Value, Datatype.

Можно динамически собирать запрос ...
...
Рейтинг: 0 / 0
12.05.2003, 15:43
    #32157663
Papka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Mne kazhetsa chto tak i ne budet rabotat.
Posle podstanovki parametrov u tebja budet primerno sleduijusseje:
SELECT...HAVING myField in ("92,12,33");
a dolzhno bit
SELECT...HAVING myField in (92,12,33);

Mozhno poprobovat v zaprose napisat tipa:
SELECT...HAVING myField in (&myParameter);
A potom &myParameter - pered vipolnenijem zaprosa zamenit na nuzhnoje.
...
Рейтинг: 0 / 0
12.05.2003, 16:29
    #32157775
McAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
TO Papka :
я тоже думаю, что это из-за кавычек, но как без них, я же передаю строковую переменную ...
а насчет &myParameter - именно так и приходится выкручиваться, но, ведь это изврат
...
Рейтинг: 0 / 0
12.05.2003, 17:31
    #32157874
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
2 McAndy

Мож немножко не в тему, но все ж спрошу. А почему ты критерий отбора в HAVING, а не в WHERE поместил? HAVING обычно используют для ограничения по уже аггрегированным данным. Ну, например, HAVING SUM(SomeField) > 0.
...
Рейтинг: 0 / 0
12.05.2003, 18:02
    #32157918
Papka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
To McAndy

Nu tak ne moget ADODataSet takuju fignju ponjat. On to dumajet, chto
:myParameter - eto ODIN parameter. A ti v nego pihajesh kuchu. :)
Ne pojdet ono tak. Delaj podstanovku u ne zaparivajsa.

P.S. Po povodu HAVING pkarklin verno podmetil. WHERE zdes kak-bi bolshe k mestu.
...
Рейтинг: 0 / 0
12.05.2003, 18:10
    #32157930
McAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
А я и использую HAVING для аггрегатов :)
...
Рейтинг: 0 / 0
12.05.2003, 18:15
    #32157935
Papka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Stranno kak-to ispolzujesh :)
Obichno sravnenija tam tipa >, <, <>, a u tebja IN. Hotja... moget tak tebe i nado
:)
...
Рейтинг: 0 / 0
12.05.2003, 18:28
    #32157954
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Действительно, странное использование HAVING. Вместо того, чтоб ограничить набор данных на этапе выборки ты это делаешь после того, как все данные проагрегированы, в том числе и те, которые тебе не нужны. Ведь в HAVING включают те значения, которые не известны до агрегации. Ну то есть в HAVING обычно стоит агрегатная функция. А у тебя IN да еще строковые поля. Дополнительные накладные расходы, однако. Так что перетаскивай условие в WHERE и формируй его строкой, а не через параметр. Или мы не все знаем про запрос?
...
Рейтинг: 0 / 0
13.05.2003, 12:32
    #32158413
McAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Господа !
Принимаю замечания насчет построения запроса, но напомню, что вопрос был Как запихнуть пераметр в запрос, при использовании IN.
...
Рейтинг: 0 / 0
13.05.2003, 13:06
    #32158473
Papka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Tolko podstanovka :). I ne nado na nas krichat :). Mi prosto pointeresovalis.
...
Рейтинг: 0 / 0
13.05.2003, 13:54
    #32158559
McAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача параметра в TADODataset
Спасибо!
.. и вовсе я не кричал... я тихо-тихо, почти шепотом :)
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Передача параметра в TADODataset / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]