procedure TBook.AddChildNodes(NodeName: string; SQLstr: string; ImlID: Integer); var CurID,SubNodename:string; SubNode,SubNodeChild:TTreeNode; begin subnode:=Tree.Items.AddChild(Tree.TopItem,NodeName); subnode.ImageIndex:=ImlID; with TDMMain1.ADOQuery1 DO begin close; SQL.Clear; SQL.Add(SQLstr); Open; First; while not Eof do begin curid:=Trim(FieldByName('a').AsString); subnodename:=CurID; subnodename:=CurID; subnodechild:=Tree.Items.AddChild(SubNode,SubNodename); SubNodeChild.ImageIndex:=2; Next; end; end; end;
TDMMain1.ADOQuery1.FieldByName('a') 他是说你这个数据集的字段a
表中没有a 吗? 那也许是别名来的 比如:select 字段1 as a,字段2 as b ...查看一下你的SQLstr值是什么就清楚了
楼上正解,看看SQL语句有没有as a
a就是字段名,但是他可能是别名也就是说你的查询语句里写着 select test as a from.... 此时adoquery里就可以用a代替test了
RootNode.ImageIndex:=1; strQry:='select distinct 出版社 as a from mybook '; AddChildNodes('出版社',strQry,3); strQry:='select distinct 印次 as a from mybook '; AddChildNodes('印次',strQry,4); strQry:='select distinct 类别 as a from mybook '; AddChildNodes('类别',strQry,5); strQry:='select distinct 出版时间 as a from mybook '; AddChildNodes('出版时间',strQry,6); strQry都有a
var
CurID,SubNodename:string;
SubNode,SubNodeChild:TTreeNode;
begin
subnode:=Tree.Items.AddChild(Tree.TopItem,NodeName);
subnode.ImageIndex:=ImlID;
with TDMMain1.ADOQuery1 DO
begin
close;
SQL.Clear;
SQL.Add(SQLstr);
Open;
First;
while not Eof do
begin
curid:=Trim(FieldByName('a').AsString);
subnodename:=CurID;
subnodename:=CurID;
subnodechild:=Tree.Items.AddChild(SubNode,SubNodename);
SubNodeChild.ImageIndex:=2;
Next; end;
end;
end;
他是说你这个数据集的字段a
比如:select 字段1 as a,字段2 as b ...查看一下你的SQLstr值是什么就清楚了
此时adoquery里就可以用a代替test了
2.查看你的SQL语句代码,是否有别名存在
3.是否用了存储过程?
双击ADOQuery1,如果没猜错,a就在里面,那是手动添加的计算字段
再双击onCalcFields事件,a的赋值也在这里,,,,去瞧瞧有没有
http://download.csdn.net/detail/changsn/3828022
帮我看看吧
strQry:='select distinct 出版社 as a from mybook ';
AddChildNodes('出版社',strQry,3);
strQry:='select distinct 印次 as a from mybook ';
AddChildNodes('印次',strQry,4);
strQry:='select distinct 类别 as a from mybook ';
AddChildNodes('类别',strQry,5);
strQry:='select distinct 出版时间 as a from mybook ';
AddChildNodes('出版时间',strQry,6);
strQry都有a