Bonjour letrom,
voilà un exemple très simple utilisant :
1 compo ADOCoonexion
1 compo ADOQuery
1 compo DataSource
1 DBGrid
1 RadioGroup (avec 3 positions)
La table est 'Orders' de la base :
C:\Program Files\Fichiers communs\Borland Shared\Data\dbdemos.mdb
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
RadioGroup1: TRadioGroup;
ADOQuery1OrderNo: TFloatField;
ADOQuery1CustNo: TFloatField;
ADOQuery1SaleDate: TDateTimeField;
ADOQuery1ShipDate: TDateTimeField;
ADOQuery1EmpNo: TIntegerField;
ADOQuery1ShipToContact: TWideStringField;
ADOQuery1ShipToAddr1: TWideStringField;
ADOQuery1ShipToAddr2: TWideStringField;
ADOQuery1ShipToCity: TWideStringField;
ADOQuery1ShipToState: TWideStringField;
ADOQuery1ShipToZip: TWideStringField;
ADOQuery1ShipToCountry: TWideStringField;
ADOQuery1ShipToPhone: TWideStringField;
ADOQuery1ShipVIA: TWideStringField;
ADOQuery1PO: TWideStringField;
ADOQuery1Terms: TWideStringField;
ADOQuery1PaymentMethod: TWideStringField;
ADOQuery1ItemsTotal: TFloatField;
ADOQuery1TaxRate: TFloatField;
ADOQuery1Freight: TFloatField;
ADOQuery1AmountPaid: TFloatField;
procedure FormCreate(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedureTForm1.FormCreate(Sender: TObject);
begin
ADOQuery1.Open;
end;
procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
try
with ADOquery1.SQL do
begin
ADOquery1.close;
case RadioGroup1.ItemIndex of
0:
begin
Clear;
Add('Select * from orders ');
Add('Where PaymentMethod = ''Visa'' ');
end;
1:
begin
Clear;
Add('Select * from orders ');
Add('Where PaymentMethod = ''Credit'' ');
end;
2:
begin
Clear;
Add('Select * from orders ');
Add('Where PaymentMethod = ''MC'' ');
end;
end;
ADOquery1.open;
end;
except
showmessage('erreur');
end;
end;
end.
Sans refresh, sans update et çà marche nickel 
cantador