Параметры в запросах Access

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
spartak
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 23.06.2003 (Пн) 13:13

Параметры в запросах Access

Сообщение spartak » 23.06.2003 (Пн) 13:23

Ребята, подскажите!
Как создать запрос в Access с двумя параметрами на одно поле?Например, это могут быть две даты, между которыми должен быть результат.

Cyrax
Cyberninja
Cyberninja
Аватара пользователя
 
Сообщения: 891
Зарегистрирован: 25.04.2002 (Чт) 21:20
Откуда: Magnitogorsk, Russia

Сообщение Cyrax » 23.06.2003 (Пн) 13:51

ну примерно так

Код: Выделить всё
OPEN * FROM tblTableName WHERE Date BETWEEN #M/dd/yy# AND #M/dd/yy#

где #M/dd/yy# - дата в американском формате (месяц/день/год)
Ты это ему расскажи. Я уже пять болтов отвинтил, и конца не видно... (озадаченно) А это в какую сторону тянуть? Ну-ка... Ага, этот был лишний, этот вообще не отсюда, и этот... Точно, два болта.

Welcome to IRC

spartak
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 23.06.2003 (Пн) 13:13

Сообщение spartak » 23.06.2003 (Пн) 14:10

Спасибо за ответ, но мне кажется я не совсем понятно выразил вопрос. Даты необходимо вводить с экрана при активизации запроса.

Cyrax
Cyberninja
Cyberninja
Аватара пользователя
 
Сообщения: 891
Зарегистрирован: 25.04.2002 (Чт) 21:20
Откуда: Magnitogorsk, Russia

Сообщение Cyrax » 23.06.2003 (Пн) 14:21

spartak писал(а):Спасибо за ответ, но мне кажется я не совсем понятно выразил вопрос. Даты необходимо вводить с экрана при активизации запроса.

а запрос какой, хранимый или из программы генерится?
если из программы, то вместо "M/dd/yy" подсовывай введенные даты (только приведи сначала к американскому стандарту)

если хранимый, то вместо #M/dd/yy# поставь что-то вроде StartDate и EndDate (это переменные параметры запроса)
тогда в программе используешь объект ADODB.Command (что там в DAO не помню...) для выполнения хранимых параметрических запросов.
Ты это ему расскажи. Я уже пять болтов отвинтил, и конца не видно... (озадаченно) А это в какую сторону тянуть? Ну-ка... Ага, этот был лишний, этот вообще не отсюда, и этот... Точно, два болта.

Welcome to IRC

spartak
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 23.06.2003 (Пн) 13:13

Сообщение spartak » 24.06.2003 (Вт) 10:05

сэнк, Циракс

Cyrax
Cyberninja
Cyberninja
Аватара пользователя
 
Сообщения: 891
Зарегистрирован: 25.04.2002 (Чт) 21:20
Откуда: Magnitogorsk, Russia

Сообщение Cyrax » 24.06.2003 (Вт) 10:10

spartak писал(а):сэнк, Циракс

всегда пожалуйста... обращайтесь еще :)

p.s. к стати мой ник читается как Сайрэкс...
Ты это ему расскажи. Я уже пять болтов отвинтил, и конца не видно... (озадаченно) А это в какую сторону тянуть? Ну-ка... Ага, этот был лишний, этот вообще не отсюда, и этот... Точно, два болта.

Welcome to IRC

ta_gena
Бывалый
Бывалый
 
Сообщения: 264
Зарегистрирован: 30.10.2002 (Ср) 12:18
Откуда: Russia

Сообщение ta_gena » 27.06.2003 (Пт) 6:34

Предлагаю еще один вариант:

Dim sTmp As String
Dim adoRS As New ADODB.Recordset


sTemp = "PARAMETERS parDate1 DATE, parDate2 DATE; SELECT * FROM Table1 WHERE Date BETWEEN parDate1 AND parDate2;"

adoRS.Open sTmp, ......

With adoRS.ActiveCommand
.Parameters("parDate1").Value = ....
.Parameters("parDate2).Value = ....
End With


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 226

    TopList  
cron