请问各位高手我的代码不知错中哪里,我是建外部键,如果maching_id输入的数据不一样就提示相应的错误信息,此号码不存在,如果填进去就不用提示了
ith adoquery1 do
 begin
  close;
  sql.clear;
  sql.add('create table kucun(maching_id char(4) constraint pk_kucun primary key clustered,machine_name varchar(50) not null,'+
           'type varchar(50) not null,number smallint,state varchar(20))');
   execsql;
with adoquery2 do
 begin
   close;
   sql.clear;
   sql.add('create table rukudan(c_name varchar(10))');
   sql.add('create table rukudan(enterlist_id char(10) primary key ,maching_id char(4)not null foreign key(maching_id) references kucun(maching_id),number int)');
   execsql;
with adotable1 do
  begin
   if active then
    begin
     append;
     fieldbyname('maching_id').asstring:=edit1.text;
     fieldbyname('machine_name').asstring:=edit2.text;
     fieldbyname('type').asstring:=edit3.text;
     post;
with adotable2 do
 begin
  if active then
   begin
    append;
    try
    fieldbyname('maching_id').asstring:=edit4.text;
    fieldbyname('enterlist_id').asstring:=edit5.text;
    post;
    except
    showmessage('此号不存在');
    end;
   end;
请各位帮助一下,错在哪里如何改正该怎样写