【求助】delphi中使用adoquery查询两个表 在dbgrid中显示时多显示了一列 如何改正
adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('select姓名,gz.*fromgz,y');adoque...
adoquery1.Close;
adoquery1.SQL.Clear ;
adoquery1.SQL.Add('select 姓名,gz.* from gz,y');
adoquery1.SQL.Add('where gz.员工编号='''+edit1.text+'''');
adoquery1.SQL.Add(' and y.员工编号=gz.员工编号');
adoquery1.Open ;
运行后多显示了一列员工编号 怎么改啊 展开
adoquery1.SQL.Clear ;
adoquery1.SQL.Add('select 姓名,gz.* from gz,y');
adoquery1.SQL.Add('where gz.员工编号='''+edit1.text+'''');
adoquery1.SQL.Add(' and y.员工编号=gz.员工编号');
adoquery1.Open ;
运行后多显示了一列员工编号 怎么改啊 展开
展开全部
select 姓名,a.* from gz a inner join y b on a.员工编号 = b.员工编号 where a.员工编号='''+edit1.text+''''
姓名也要注明来自哪个表
姓名也要注明来自哪个表
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵 你楼主你用left join吧 我只写SQL语句啊 (select a.字段 from 表名1 a left join (select 字段 from 表名2) b on a.字段=b.字段) 好好研究下吧!
追问
还是一样的啊 之前我做的在sql server里显示也是对的 就是在delphi里用DBgrid显示的时候会多一列
追答
我想问下你的GRID 是不是活表 是自动生成字段的那种 如果是 那建议你用存储过程,否则就很难实现的!还有就是你把员工编号的字段放在grid裏面,一般情况是不可以出现你这种情况的!
你可以去看看你dbgrid的设置属性!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询