用TDatabase代替BDE中的数据源,创建一个本地临时表是可以的

解决方案 »

  1.   

    用ADO吧,不过是系统自带的哪种,并非DEPHI中的控件。例如:创建临时数据源,然后....
    var
    AConnection, ARecordSet : variant;
    begin
    AConnection := CreateOleObject(’ADODB.Connection’);
    AConnection.Open(’Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\inetpub\wwwroot\test’);
      

  2.   

    临时表和数据源
    这是两个不同的概念
    临时表是数据库中的
    而数据源则是delphi中的
    当然可以建立,只要你的数据库系统支持
    create table #table1....
      

  3.   

    with ClientDataSet1 do
      begin
        with FieldDefs.AddFieldDef do
        begin
          DataType := ftString;
          Name := 'MA01';
          Size := 15;
        end;
        with FieldDefs.AddFieldDef do
        begin
          DataType := ftString;
          Name := 'MA02';
        end;
        with FieldDefs.AddFieldDef do
        begin
          DataType := ftFloat;
          Name := 'MA03';
        end;
        with FieldDefs.AddFieldDef do
        begin
          DataType := ftFloat;
          Name := 'MA04';
        end;
        with FieldDefs.AddFieldDef do
        begin
          DataType := ftFloat;
          Name := 'MA05';
        end;
        with FieldDefs.AddFieldDef do
        begin
          DataType := ftstring;
          Name := 'MA06';
        end;
        with IndexDefs.AddIndexDef do
        begin
          Fields := 'MA01';
          Name := 'MA01IDX';
        end;
        CreateDataSet;
        Frm_dm1.CDS2.IndexName := 'MA01IDX';
      

  4.   

    可在设计期先给ClientDateSet添加字段。
    ClientDataSet.CreateDataSet创建内存临时表。
    ClientDataSet.AddIndex创建索引。不过,使用了ClientDataSet的程序在分发时必须包含DBClient.dll这个动态连接库。
      

  5.   

    Yes! 好!我创建一下试试!