<<Delphi 5.X ADO/MTS/COM+高级程序设计篇>> 第3章  3-7-3使用ADOX的范例
  是通过ADOX取得某个数据库中数据表的每个字段的详细信息,包括字段名、字段类型、字段长度等,当然还有建表和删表等自定义操作.
但是,在编译时,运行到下面的代码时(P138)
  procedure TForm1.FormCreate(Sender: TObject);
  begin
  adoxCatalog :=CoCatalog.Create;
  end;
编译错误信息如下:
[Warning]frim_main.pas(77):Undeclared indentifier:'adoxCatalog'
但是我已经通过Import Libary 把ADOX_TLB 实现使用这些com组件了,各位高手请指教!!

解决方案 »

  1.   

    看看在unit的uses(最上面的uses)里面有没有加入相应的单元啊
      

  2.   

    var
      adoxCatalog:_Catalog ;
    begin
     adoxCatalog:=ADOX_TLB.CoCatalog.Create;
    end;
      

  3.   

    你没有定义adoxCatalog这个变量当然出错拉
      

  4.   

    我想再楼上一个笨问题,adoxCatalog这个变量是不是要在当前Form中(Form1)定义?
      

  5.   

    各位大老,根据楼上两位提示,我把该定义的变量(全局变量)都定好,如下
    var
      Form1: TForm1;
      adoxCatalog:_Catalog ;
      adoxTables:Tables;
      adoxTable:_Table;
    implementation{$R *.dfm}
    但是,运行exe文件,当触发btnTablesClick事件时,出现错误对话框,提示信息
    “连接无法用于执行此操作。在上下文中它可能已被关闭或无效。”
      

  6.   

    var
      Form1: TForm1;
      adoxCatalog: Catalog;
      adoxTables: Tables;
      adoxTable: Table;
      adoxColumns: Columns;
      adoxColumn: Column;
      adoxIndexes: Indexes;
      adoxIndex: Index;
      adoxSPs: Procedures;
      adoxSP: Procedure_;
      iCol,iRow:Integer;implementation