Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 25.11.2011
Сообщений: 18
1

Помогите с параметрическим запросом пожалуйста.

27.11.2011, 08:26. Показов 937. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У меня имеется таблица с полями группа, кол-во учащихся на другой форме имеется DBLookUpComboBox который принимает значения столбца группа, и имеется DBEdit который должен принимать значения кол-во учащихся в соответствии с группой. Открытие запроса я прописал на событии DBLookupComboBox1Click там прописал код
Delphi
1
2
3
    DataModule2.ADOQuery1.Close;
    DataModule2.ADOQuery1.Parameters[0].Value:=DBLookupComboBox1.Text;
    DataModule2.ADOQuery1.Open;
На этой же форме я так, чисто для себя поставил DBGrid который должен показывать результат SQL-запроса, но таблица всегда пуста. Запрос выглядит так
SQL
1
2
3
SELECT кол_уч
FROM группа
WHERE 'группа'=:param
Или как можно сделать по другому запрос чтобы DBEdit принимал правильное значение кол-во учащихся нужной группы. DBLookupComboBox нужен обязательно. Заранее всем спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.11.2011, 08:26
Ответы с готовыми решениями:

Помогите, пожалуйста, с запросом
В таблице Product найти модели, у которых первый символ представляет собой четную цифру, а...

Помогите пожалуйста с запросом
Здравствуйте, имеем 1С 7.7 формирую маленький запрос Перем Запрос, ТекстЗапроса, Таб; Запрос =...

Помогите, Пожалуйста, С Запросом... Не Работает =(
Вот часть запроса |ГДЕ | Штрихкоды.Владелец.ЭтоГруппа <> &ЭтоГруппа | И...

Помогите пожалуйста с запросом linq to xml
есть следующий xml элемент: Dim contacts As XElement = _ <contacts> <people1> ...

4
20 / 20 / 0
Регистрация: 26.11.2011
Сообщений: 64
27.11.2011, 09:28 2
привет Cyber9
вот как устанавливаться параметры:

Delphi
1
2
3
4
5
6
7
8
9
DataModule2.ADOQuery1.Params.Insert(0);
DataModule2.ADOQuery1.Params.Items[0].DataType:=ftString;
DataModule2.ADOQuery1.Params.Items[0].ParamType:=ptUnknown;
DataModule2.ADOQuery1.Params.Items[0].Name:='param';
DataModule2.ADOQuery1.Params.Items[0].Value:=DBLookupComboBox1.Text
вот запрос:
 
DataModule2.ADOQuery1.SQL.add('SELECT кол_уч FROM группа WHERE (группа=:param)');
DataModule2.ADOQuery1.Active:=true;
1
0 / 0 / 0
Регистрация: 25.11.2011
Сообщений: 18
27.11.2011, 10:10  [ТС] 3
Спасибо! В целом работает, но только один раз. Я выбираю группу из DBLookUpComboBox, потом в нужном месте показывает правильное значение кол-во учащихся, а когда в DBLookUpComboBox я выбираю уже другую группу, уже ошибка (вот на скриншоте) и твой код пришлось подправить, вот так
Delphi
1
2
3
4
5
6
7
8
9
    DataModule2.ADOQuery1.Close;
    DataModule2.ADOQuery1.Parameters.Insert(0);
    DataModule2.ADOQuery1.Parameters.Items[0].DataType:=ftString;
    ///DataModule2.ADOQuery1.Parameters.Items[0].Parameters.:=ptUnknown; - эту строчку Delphi не воспринимает
    DataModule2.ADOQuery1.Parameters.Items[0].Name:='param';
    DataModule2.ADOQuery1.Parameters.Items[0].Value:=DBLookupComboBox1.Text;
    DataModule2.ADOQuery1.SQL.add('SELECT кол_уч FROM группа WHERE (группа=:param)');
    DataModule2.ADOQuery1.Active:=true;
    DataModule2.ADOQuery1.Open;
Миниатюры
Помогите с параметрическим запросом пожалуйста.  
0
0 / 0 / 0
Регистрация: 25.11.2011
Сообщений: 18
27.11.2011, 10:34  [ТС] 4
Урррра! Я сам разобрался) просто после DataModule2.ADOQuery1.Close; добавил DataModule2.ADOQuery1.SQL.Clear;
0
1496 / 1238 / 244
Регистрация: 04.04.2011
Сообщений: 4,362
27.11.2011, 18:39 5
Вместо всего этого вполне достаточно:

Delphi
1
2
3
4
5
6
7
with DataModule2.ADOQuery1 do
   begin
    If Active then Close;
    SQL.Text := 'SELECT [кол_уч] FROM [группа] WHERE [группа]=:param';
    Parameters.ParamByName('param').Value:=DBLookupComboBox1.Text;
    Open;            
  end;
И еще. Избегайте использования в названиях полей, таблиц и т.д. БД кириллицы и вообще "левых" символов. Акцес жует русские буквы без проблем, но вот другие серверы этим не отличаются - будете получать грабли
1
27.11.2011, 18:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2011, 18:39
Помогаю со студенческими работами здесь

Пожалуйста нужно разобраться с запросом Mysql! Одним запросом из двух таблиц / MySQL
У меня на главной странице существует вот такой запрос (он ниже), который вытаскивает из таблицы...

Подскажите пожалуйста с запросом к БД
есть проект в visual studio к нему привязана бд, все данные в ней на русском, с поля формы считываю...

Подскажите с Запросом пожалуйста
Здравствуйте! Впервые на Вашем форуме, вижу многим уже помогли сдесь, может и мне подскажете....

подскажите пожалуйста с запросом sql
нужно сделать без джоин и следовательно как можно проще 1)Вывести государство, в котором на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru