void __fastcall TForm1::Button1Click(TObject *Sender)
{
AdsQuery1->Active = false;
AdsTable1->Active = true;
DataSource1->DataSet = AdsTable1;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
AdsTable1->Active = false;
AdsQuery1->Active = true;
DataSource1->DataSet = AdsQuery1;
}
Две кнопки на форме:
Button1Click — событие первой кнопки
Button2Click — событие второй кнопки
Если после нажатия на вторую кнопку нажать первую вылетает исключение:
"Invalid open mode"
Что нужно закрыть еще в AdsQuery чтобы избежать исключения ?
Спасибо.
... << RSDN@Home 1.1.3 beta 1 >>
Наверное неинформативный вопрос.
Подробнее:
Есть БД. Сначала присоединяемся к БД при помощи AdsTable и выводим их для примера в Грид — все норм.
После по приведенному коду выше жмем вторую кнопку. Загружаем данные в AdsQuery смотрим на них через Грид — все норм.
При попытке нажать первую кнопку т.е. делаем неактивным AdsQuery и пытаемся присоединиться к базе через AdsTable — Invalid open mode.
Раньше не работал с Query что еще нужно сделать чтобы освободить БД от нее ?
Или я в другом не прав ?
Помогите.
Спасибо.
... << RSDN@Home 1.1.3 beta 1 >>
Здравствуйте, GreenElf, Вы писали:
GE>Наверное неинформативный вопрос.
GE>Подробнее:
GE>Есть БД. Сначала присоединяемся к БД при помощи AdsTable и выводим их для примера в Грид — все норм.
GE>После по приведенному коду выше жмем вторую кнопку. Загружаем данные в AdsQuery смотрим на них через Грид — все норм.
GE>При попытке нажать первую кнопку т.е. делаем неактивным AdsQuery и пытаемся присоединиться к базе через AdsTable — Invalid open mode.
GE>Раньше не работал с Query что еще нужно сделать чтобы освободить БД от нее ?
GE>Или я в другом не прав ?
GE>Помогите.
GE>Спасибо.
1. Параметры adsconnection можно?
2. Параметры adsquery можно и его sql запрос?
3.
AdsQuery1->Active = false;
DataSource1->DataSet = AdsTable1;
AdsTable1->Active = true;
Если поменять местами, что будет?
Пока идеи все.
... << RSDN@Home 1.1.4 beta 2 >>
I>1. Параметры adsconnection можно?
I>2. Параметры adsquery можно и его sql запрос?
I>3.
I>I> AdsQuery1->Active = false;
I> DataSource1->DataSet = AdsTable1;
I> AdsTable1->Active = true;
I>
I>Если поменять местами, что будет?
I>Пока идеи все.
Вся проблема была в свойстве TableType оно у меня стояло ttAdsNTX, а нужно было ttAdsCDX.
Эта проблема несовместимости индексов. Но в моем случае я их не использую поэтому проблема разрешилась заменив свойство ttAdsNTX на ttAdsCDX.
Всем спасибо.
... << RSDN@Home 1.1.3 beta 1 >>
Здравствуйте, GreenElf, Вы писали:
GE>GE>void __fastcall TForm1::Button1Click(TObject *Sender)
GE>{
GE> AdsQuery1->Active = false;
GE> AdsTable1->Active = true;
GE> DataSource1->DataSet = AdsTable1;
GE>}
GE>//---------------------------------------------------------------------------
GE>void __fastcall TForm1::Button2Click(TObject *Sender)
GE>{
GE> AdsTable1->Active = false;
GE> AdsQuery1->Active = true;
GE> DataSource1->DataSet = AdsQuery1;
GE>}
GE>
GE>Две кнопки на форме:
GE>Button1Click — событие первой кнопки
GE>Button2Click — событие второй кнопки
GE>Если после нажатия на вторую кнопку нажать первую вылетает исключение:
GE>"Invalid open mode"
Ответ здесь
http://resolution.extendedsystems.com/ADS/Support/Technical+Tip+22.htm