估计你的 uses 单元有什么东西没有引用!

解决方案 »

  1.   

    在前面加上
    uses bde这个单元
      

  2.   

    不认为这几个呀,你没有引用相关单元。
    uses IBBlob
      

  3.   

    HDBIDB,DBIResult这两个类型是你自已定义的还是系统定义的,如你自定义的你就要看一下你的代码了,肯定有问题。如是系统定义的,就查一下是那个单元的,use那个单元就可以了。
      

  4.   

    对不起,你用的是ttable,应该引用DBTables
    uses DBTables
      

  5.   

    对不起,你用的是ttable,应该引用DBTables
    uses DBTables
      

  6.   

    没有引用单元,可以将光标放在类型上面按F1看看帮助,就知道类型是哪个单元定义的了,然后在单元开头USES该单元即可。
      

  7.   

    1.估计是没有引用相应的单元2.DBHandle: HDBIDB;  //错误。如下
      ResultCode: DBIResult;//错误,如下按住CTRL键,点击HDBIDB或DBIResult系统会转到相应的单元中(如果有),如果没有,则会提示相应的单元文件不存在
    3.查看一下有没有使用第三方控件。
      

  8.   

    谢谢,有谁知道,
    procedure TConvertForm.CopyTable(FromDir, SrcTblName, ToDir, DestTblName: String);//上面的各个参数意义吗,谢谢,我看还是再开一个给分合适,人多了,谢谢,
    var
      DBHandle: HDBIDB;
      ResultCode: DBIResult;
      Src, Dest, Err: Array[0..255] of Char;
      SrcTbl, DestTbl: TTable;
    begin
      SrcTbl := TTable.Create(Application);
      DestTbl := TTable.Create(Application);
      try
        SrcTbl.DatabaseName := FromDir;
        SrcTbl.TableName := SrcTblName;
        SrcTbl.Open;
        DBHandle := SrcTbl.DBHandle;
        SrcTbl.Close;
        ResultCode := DbiCopyTable(DBHandle,false,
          StrPCopy(Src,FromDir + '\' + SrcTblName), nil,
          StrPCopy(Dest,ToDir + '\' + DestTblName));
        if ResultCode <> DBIERR_NONE then
        begin
          DbiGetErrorString(ResultCode,Err);
          raise EDatabaseError.Create('While copying ' +
            FromDir + '\' + SrcTblName + ' to ' +
            ToDir + '\' +  DestTblName + ', the '
            + ' database engine   generated the error '''
            + StrPas(Err) + '''');
        end;
      finally
        SrcTbl.Free;
        DestTbl.Free;
      end;
    end;