Помогите с Data и DBGrid, плиз!!!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Помогите с Data и DBGrid, плиз!!!

Сообщение A.A.Z. » 30.06.2003 (Пн) 13:51

Мне нужно в DBGrid выполнить фильтрацию по одному столбику. Проблема в том, что она (фильтрация) должна выполнятся по какой-то переменной, а не по конкретному числу. Вот ему это-то и не нравится. Что делать?
Код: Выделить всё
Dim n As Integer
n = InputBox("Введите номер покупки")
Data1.RecordSource = "SELECT * FROM Purchases WHERE 'N' = n"   'На это он отвечает: "Too few parameters. Expected 3"
Data1.Refresh


Что это значит, я понимаю, а вот как от этого избавится? :?:

boevik
Обычный пользователь
Обычный пользователь
 
Сообщения: 72
Зарегистрирован: 23.07.2002 (Вт) 11:44
Откуда: Israel

Сообщение boevik » 30.06.2003 (Пн) 14:10

Код: Выделить всё
Dim n As Integer
n = InputBox("Введите номер покупки")
Data1.RecordSource = "SELECT * FROM Purchases WHERE 'N' = " & n
Data1.Refresh

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

RE

Сообщение A.A.Z. » 30.06.2003 (Пн) 14:36

Пробовал. Хотя и ошибка уже другая, всё равно не помогает. :(

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 30.06.2003 (Пн) 14:42

Навзание поля вообще-то в апострофы не заключается. И вообще ни во что не заключается.

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

Сообщение Cyrax » 30.06.2003 (Пн) 14:46

чего-то я сразу и не въехал в смысл вопроса...
какое число, какая переменная? вы о чем?

запрос должен быть таким:
Код: Выделить всё
SELECT * FROM Purchases WHERE <field_name> = " & n

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

Welcome to IRC

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Спасибо

Сообщение A.A.Z. » 30.06.2003 (Пн) 16:35

Сделал по-своему. А насчёт апострофов - спасибо, не заметил сразу. :)

FaKk2
El rebelde gur&#250;
El rebelde gur&#250;
Аватара пользователя
 
Сообщения: 2031
Зарегистрирован: 09.03.2003 (Вс) 22:10
Откуда: Los Angeles

Сообщение FaKk2 » 29.03.2004 (Пн) 0:42

RayShade писал(а):Навзание поля вообще-то в апострофы не заключается. И вообще ни во что не заключается.


Топику конечно сто лет в обед, но тут в трепе AAZ вспомнил:)

Так вот тут увидел вопиющую неточность:)
Вообще то название поля нужно брать в скобки квадратные, иначе конфликт получится может:)
Вот попробуйте с SQL запросе поле обозвать Date, а не [Date] - получите фигу :o
Для получения ответа надо продемонстрировать качества, позволяющие стать компетентным — внимательность, вдумчивость, наблюдательность, желание активно участвовать в выработке решения.

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 29.03.2004 (Пн) 19:38

Да, точно! :)
Нет меня больше


Вернуться в Visual Basic 1–6

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

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 4

    TopList