Parameters?, в запросе поменять имя таблицы
В свойстве SQL запрос:
SELECT * From :ParTableName //Эта рожа влезла сама по себе. Там вместо нее :Р
Where AlbID =:AlbR
А далее при нажатии на кнопку код:
void __fastcall TFormMain::Button1Click(TObject *Sender)
{
AnsiString TabRef; //имя таблицы
int AlbRef; //переменная на сортировку записей
TabRef = ADOAllTables->FieldByName("TableRef")->AsString;
AlbRef = ADOAllTables->FieldByName("AlbID")->AsInteger;
TParameter* parTN=ADOReq->Parameters->ParamByName("ParTableName");
if(!parTN)
parTN=ADOReq->Parameters->CreateParameter(WideString("ParTableName"),ftString,pdInput,64,(OleVariant)NULL);
if(!parTN)
throw Exception("Ошибка создания параметра");
parTN->Value = TabRef;
//Сортировка записей по AlbR
ADOReq->Parameters->ParamByName("AlbR")->Value = AlbRef;
ADOReq->Open();
}
При компеляции ошибок нет. Но при выполнении кода появляется сообщение:
"Must declare the variable '@P1'".
Пытаюсь просмотреть пошагово. Вроде бы все подставляет правильно. После активизации запроса
ADOReq->Open();
вылетает указанное сообщение, а затем курсор встает в главный модуль на скобку
...
Application->Run();
}
Кто-нибудь может объяснить, в чем моя ошибка?
:devil: