unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,DB,ADODB, Grids, DBGrids, StdCtrls;type
  TForm1 = class(TForm)
    ADOConnection1: TADOConnection;
    ADODataSet1: TADODataSet;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    Function ColumnExists(DataSet:TDateSet;sColumn:String):Boolean;  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.dfm}
Function TForm1.ColumnExists(DataSet:TDateSet; sColumn:String):Boolean;
var
  T:TField;
begin
  T:=DataSet.FindField(sColumn);
  if Assigned(T) then Result:=true else Result:=false;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
ADODataSet1.close;
ADODataSet1.CommandText:='select * from Dic_City';
ADODataSet1.Open;
if ColumnExists(ADODataSet1,'Code') then
  showmessage('OK');
end;end.
---------------------
ERROR:'Undeclared identifier:'TDataSet''各位请帮忙,先谢过

解决方案 »

  1.   

    Function TForm1.ColumnExists(DataSet:(******TDateSet****); sColumn:String):Boolean;
    data
      

  2.   

    不会吧,我没发现有问题啊。
    这个错误是指TDataset没定义,可你明明引用了DB单元的,应该不会有这个错误的。会不会是delphi出问题了?
      

  3.   

    变量DataSet未申明;
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs,DB,ADODB, Grids, DBGrids, StdCtrls;type
      TForm1 = class(TForm)
        ADOConnection1: TADOConnection;
        ADODataSet1: TADODataSet;
        DataSource1: TDataSource;
        DBGrid1: TDBGrid;
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
        Function ColumnExists(DataSet:TDateSet;sColumn:String):Boolean;  public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}
    Function TForm1.ColumnExists(DataSet:TDateSet; sColumn:String):Boolean;
    var
      T:TField;
      DataSet: TDataSet;
    begin
      DataSet := TDataSet.Create(Application);
      T:=DataSet.FindField(sColumn);
      if Assigned(T) then Result:=true else Result:=false;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
    ADODataSet1.close;
    ADODataSet1.CommandText:='select * from Dic_City';
    ADODataSet1.Open;
    if ColumnExists(ADODataSet1,'Code') then
      showmessage('OK');
    end;end.
      

  4.   

    TDataSet  //對的
    TDateSet  //錯的分別就是 a 與 e