我在单击删除记录、添加记录、插入记 录时为什么会出现access violation at address 004725a9 in module 'project.exe'. read of address 00000000.对话框
题目是设计一个应用程序,完成下到功能:单击删除记录按钮,则删除数据库中当前的一条记录,单击添加记录按钮,则在数据库末尾添加一条记录,把edit1和edit2的值写入数据库字段name和capital中。
代码如下:
unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables;type
  TForm1 = class(TForm)
    ds1: TDataSource;
    tbl1: TTable;
    Button1: TButton;
    Button2: TButton;
    Button4: TButton;
    edt1: TEdit;
    edt2: TEdit;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
   if not tbl1.Eof then
      tbl1.Next;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
   tbl1.Delete;
   tbl1.destroy;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
   tbl1.Insert;
   tbl1.FieldByName('name').asstring:=edt1.Text;
   tbl1.FieldByName('capital').AsString:=edt2.Text;
   tbl1.Destroy;
end;procedure TForm1.Button4Click(Sender: TObject);
begin
  tbl1.Append;
  tbl1.FieldByName('name').AsString:=edt1.Text;
  tbl1.FieldByName('capital').AsString:=edt2.Text;
  tbl1.Destroy;
end;end.