回 帖 发 新 帖 刷新版面

主题:向ADOTable中插入数据时出错?

procedure TForm2.btNewClick(Sender: TObject);
begin
  if Length(Edit1{TxtAircraft}.text)=0 then{关键字段为空则显示出错对话框}
  begin
    MessageDlg('必须输入机型',mtError,[mbOK],0);
  end
  else
    ADOTable1.IndexFieldNames:='Aircraft';
  if ADOTable1.FindKey([TxtAirCraft.text]) then {所输入的关键字与已存在的记录重复}
  begin
    MessageDlg('该机型已经存在',mtError,[mbOK],0);
  end
  else
    ADOTable1.InsertRecord([Edit1.text,Edit2.text,
    Edit3.text,Edit4.text,Edit5.text,
    Edit6.text,Edit7.text,
    Edit8.text,Edit9.text,
    Edit10.text]);
    Edit1.text:='';
    Edit2.text:='';
    Edit3.text:='';
    Edit4.text:='';
    Edit5.text:='';
    Edit6.text:='';
    Edit7.text:='';
    Edit8.text:='';
    Edit9.text:='';
    Edit10.text:='';
end;

回复列表 (共7个回复)

沙发

楼主用断点调试一下

板凳

哪里出错了?

3 楼

出错行是if ADOTable1.FindKey([TxtAirCraft.text]) then
出错信息是:
Undeclared identifier:'FindKey'
Ordinal type required

4 楼

ADOTable1根本就没有FindKey方法啊,你用FindField试试

5 楼

改用findfield后还存在Ordinal type required的错误

6 楼

用ADOQuery吧,好用,写sql语句比这来的爽

7 楼

楼主用adotable1.locate试试看

我来回复

您尚未登录,请登录后再回复。点此登录或注册