Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос о SQL в VC++, Пишу простейший запрос... 
:(
    Опции темы
St. Andrew
  Дата 7.6.2005, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 28.3.2005
Где: Санкт-Петербург

Репутация: нет
Всего: 8



Всем добрый день! Есть маленький вопросец по написанию SQL-запроса для БД Access 2002. Суть в следующем: имеется таблица offers, состоящая из трех столбцов: id, store_id, disk_id Все поля - числовые. Требуется получить значения всех полей в столбце id_disk, при которых значение столбца store_id равняется некой переменной shop, полученной в ходе выполнения программы (тип переменной - int). Пишу запрос:

Код

CRecordset cr(&cdbMyDB);
cr.Open(CRecordset::forwardOnly,"SELECT offers.disk_id FROM offers WHERE ((offers.store_id)=shop);", CRecordset::readOnly);




При выполнении этого куска кода возникает ошибка "Слишком мало параметров. Требуется 1" smile Подскажите, плиз, какой еще параметр нужно добавить или, может быть, какой-нибудь эквивалентный код SQL. Примеры приветствуются! smile smile smile


--------------------
Оглянитесь вокруг! В мире так много прекрасного!
PM MAIL WWW ICQ   Вверх
UncleBob
Дата 8.6.2005, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 6.6.2005
Где: vo.spb.ru

Репутация: нет
Всего: нет



Как минимум в запрос нужно подставить значение переменной, т.е.

Код

CString txtQuery;
txtQuery.Format ("SELECT offers.disk_id FROM offers WHERE ((offers.store_id)=%d);", shop);
cr.Open(CRecordset::forwardOnly, txtQuery, CRecordset::readOnly);

PM MAIL   Вверх
achmed
Дата 8.6.2005, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 150
Регистрация: 12.4.2004

Репутация: нет
Всего: нет



Рекомендую SQL запросы проверять в средствами СУБД, прежде чем тащить в программу.
PM MAIL   Вверх
St. Andrew
Дата 9.6.2005, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 28.3.2005
Где: Санкт-Петербург

Репутация: нет
Всего: 8



Спасибо за советы! Обязательно учту smile
--------------------
Оглянитесь вокруг! В мире так много прекрасного!
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C++: Базы данных"
chipset

Данный форум предназначен для обсуждения вопросов прямым образом связанных с C++ и БД. Так, вопросы только по C++ следует задавать в C++:Общие вопросы а вопросы по абстрактным БД в Базах данных или в соответствующих под-форумах.

Благодарим за понимание.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, chipset.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Базы данных | Следующая тема »


 




[ Время генерации скрипта: 0.0504 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.