在动态链接库中使用数据库:
定义如下三个数据库的类:
  RXDatabasePtr:           TDatabase;
  RXTablePtr:              TTable;
  RXQueryPtr:              TQuery;
  stra:                    TStringList;在dll的过程中:
  RXDatabasePtr:=TDataBase.Create(Application);
  RXTablePtr:=TTable.Create(Application);
  RXQueryPtr:=TQuery.Create(Application);  RXDataBasePtr.Connected:=False;
  RXDataBasePtr.AliasName:='AAAA';
  RXDataBasePtr.Params.Clear;  RXDataBasePtr.LoginPrompt:=False;
  RXDatabasePtr.Params.Add('USERNAME='+#$27+'SA'+#$27);
  RXDatabasePtr.Params.Add('PASSWORD='+#$27+'SA'+#$27);  RXDatabasePtr.DatabaseName:='TESTSQL';
  try                                      { 试图打开数据库 }
   RXDatabasePtr.Connected:=True;          { 连接数据库 }
  except
   ........                                { 打开失败 }
   end;
  end;  { 链接数据表控件 }
  RXTablePtr.Active:=False;                 { 关闭 Table }
  RXTablePtr.DatabaseName:='TESTSQL';
  RXTablePtr.TableName:='dbo.BBBB';
  try
    RXTablePtr.Active:=True;
  except
    on E: EDBEngineError do
    begin
    ...................
    end;
  end;  { 链接查询控件 }
  RXQueryPtr.Active:=False;                 { 关闭 Table }
  RXQueryPtr.DatabaseName:='TESTSQL';
  RXQueryPtr.SQL.Clear;
  sqlstr:='';
  sqlstr:='select top 20 sum(TPNUM) as aa,userdoc from dbo.BBBB group by  USERDOC order by sum(tpnum) desc';
  RXQueryPtr.SQL.Add(sqlstr);
  RXQueryPtr.Open;
  
  if not RXQueryPtr.IsEmpty then
  begin
    RXQueryPtr.First;
    stra:=TStringList.Create;
    stra.clear;
    while not RXQueryPtr.eof do
    begin
    ......
    ....?????如何把查询的结果值付给stra变量????........
    ......
    end;
    stra.free;
  end;