576________,____________________________________ 10

     ,   MSQL 
Select .        
, ,   ,      .   -
        -
       , .   -
      (   
WHERE),    (    ORDER BY)  
 (    GROUP BY)    -
, , .  ,   , -
           -
 .

     .

//  ,   
//    

enum TRegim {RNone, RFields, RWhere, ROrder, REnd) Regim;

//

void _fastcall  TFormI::ADDS(String s)
(

//       Memo   s

MSQL->Lines->Strings[MSQL->Lines->Count-l] =

MSQL->Lines->Strings[MSQL->Lines->Count-l] + s;

}

//

void _fastcall TFormI::CBFieldsChange(TObject *Sender)
(

if ((Regim == REnd)I I(MSQL->Lines->Count < 1))
ShowMessage("      ");

else ADDS!" "+CBFields->Text) ;

1

//

void _fastcall TFormI::FormCreate(TObject *Sender)

(

//       

Query->GetFieldNames(CBFields->Items) ;

CBFields->Items->Insert(0,"*");

CBFields->ItemIndex = 0;

CBOp->ItemIndex = 0;

Regim = RNone;

}

II

void _fastcall TFormI::BbeginClick(TObject *Sender)
(

MSQL->Clear() ;

MSQL->Lines->Add("Select ");

Regim = RFields;

//

void   fastcall TFormI::BexecClick(TObject *Sender)
(

if (Regim == RNone)
(

ShowMessage("   ");

return;

}

if (Regim == RFields)
ADDS(" FROM PERS") ;

Regim = REnd;

Query->SQL->Assign(MSQL->Lines) ;