现有两张表:tb_1,tb_2  
tb_1中的子段有:id ,user_name ,departMent_id 
tb_2中的子段有:id ,departMent_id,departMent_name现在使用adoquery控件(注:要一定使用它,网上大量adotable的例子)动态创建一个字段,实现动态lookup查询功能。思路如下:在窗体中添加adoquery控件,adotable控件,dataSource控件,dbgrid等控件。其中,adoquery从表tb_1取数据并通过dataSource控件与dbgrid关联,adotable与表tb_2关联。以下为代码procedure TForm1.FormShow(Sender: TObject);
var
strSQL:String;
departMent1:TStringField;
begin
 strSQL:='select * from tb_1 ';
 adoquery1.Close;
 adoquery1.sql.clear;
 adoquery1.SQL.Add(strSQL); departMent1:=TStringField.Create(self);
 departMent1.FieldKind :=  fkLookUp;
 departMent1.LookupDataSet:= AdoTable1;
 departMent1.LookupKeyFields:='departMent_id';
 departMent1.LookupResultField:='departMent_name';
 departMent1.FieldName:='test';
 departMent1.KeyFields :='department_id'; departMent1.DataSet:= adoquery1;
 adoquery1.Fields.Add(departMent1); adoquery1.Open;但运行后,提示field dempartMenti_id not found 请大侠出手相助。急等。谢谢。