Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MS SQL server + ADO + ADOQuery - как организовать? 
:(
    Опции темы
direk2006
Дата 25.1.2015, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Если делать вот такой например запрос в MS SQL Menedgment Studio, 
то в результате создаются две отдельные таблицы  с данными:

Код

SELECT        actor_id, name_actor
FROM            actor 
WHERE        (actor_id = 1844)

SELECT        film_id, nazva
FROM            film
WHERE        (film_id = 39)


А как реализовать тоже, но  в с++ (у меня RAD XE3)?
Потому как если делаю:
Код


         DataModule1->ADOQuery2->SQL->Clear();
     DataModule1->ADOQuery2->Parameters->Clear();
     DataModule1->ADOQuery2->SQL->Add ( " select  actor.actor_id,  actor.name_actor");
     DataModule1->ADOQuery2->SQL->Add ( " FROM   actor      ");
     DataModule1->ADOQuery2->SQL->Add ( " WHERE actor.actor_id = :actor_id                                       ");

     DataModule1->ADOQuery2->SQL->Add ( " SELECT        film.film_id, film.nazva");
     DataModule1->ADOQuery2->SQL->Add ( " FROM   film      ");
     DataModule1->ADOQuery2->SQL->Add ( " WHERE film.film_id = :film_id                                       ");

     DataModule1->ADOQuery2->Parameters->ParamByName("actor_id")->DataType  = ftInteger;
     DataModule1->ADOQuery2->Parameters->ParamByName("actor_id")->Direction = pdInput;
     DataModule1->ADOQuery2->Parameters->ParamByName("actor_id")->Value = 1844;

     DataModule1->ADOQuery2->Parameters->ParamByName("film_id")->DataType  = ftInteger;
     DataModule1->ADOQuery2->Parameters->ParamByName("film_id")->Direction = pdInput;
     DataModule1->ADOQuery2->Parameters->ParamByName("film_id")->Value = 39;
     DataModule1->ADOQuery2->Prepared = true;
     try
         {
             DataModule1->ADOQuery2->Open(); // ->ExecSQL() ;
         }
     catch (EADOError& e)
         {
             MessageDlg("Error while connecting", mtError, TMsgDlgButtons() << mbOK, 0);
             return;
         }
Memo1->Lines->Add(DataModule1->ADOQuery2->FieldByName("name_actor")->AsString);
Memo1->Lines->Add(DataModule1->ADOQuery2->FieldByName("nazva")->AsString);


то значение name_actor выводит нормально, а при nazva уже пишет :"ADOQuery2: Field 'nazva' not found."



Это сообщение отредактировал(а) direk2006 - 25.1.2015, 19:32
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C++: Базы данных"
chipset

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

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


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

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


 




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


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

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