delphi中access数据库的问题
有两个ACCESS数据表A如下IDNameScore1老张802王二小703老张804李小黑90B表IDNameScore1王小二802老李703李小黑804老张90程序...
有两个ACCESS数据表A如下
ID Name Score
1 老张 80
2 王二小 70
3 老张 80
4 李小黑 90
B表 ID Name Score
1 王小二 80
2 老李 70
3 李小黑 80
4 老张 90
程序运行时两个数据表的记录都是一条一条的往下下,我的问题是:当这两个表的记录的name相同时,怎么把这个名字记录到c表:如下
ID Name
我用的控件是adoquery1.adoquery2,adoquery3.菜鸟求助大侠,最好给附上代码呀,因为我真的很菜 展开
ID Name Score
1 老张 80
2 王二小 70
3 老张 80
4 李小黑 90
B表 ID Name Score
1 王小二 80
2 老李 70
3 李小黑 80
4 老张 90
程序运行时两个数据表的记录都是一条一条的往下下,我的问题是:当这两个表的记录的name相同时,怎么把这个名字记录到c表:如下
ID Name
我用的控件是adoquery1.adoquery2,adoquery3.菜鸟求助大侠,最好给附上代码呀,因为我真的很菜 展开
2个回答
展开全部
可以这样吗
adoquery1.first;
while not adoquery1.eof do
begin
if adoquery2.locate('name',adoquery1.fieldbyname('name').asstring,[]) then
begin
adoquery3.append;
adoquery3.fieldbyname('name').asstring :=adoquery1.fieldbyname('name').asstring;
adoquery3.post;
end;
adoquery1.next;
end;
adoquery1.first;
while not adoquery1.eof do
begin
if adoquery2.locate('name',adoquery1.fieldbyname('name').asstring,[]) then
begin
adoquery3.append;
adoquery3.fieldbyname('name').asstring :=adoquery1.fieldbyname('name').asstring;
adoquery3.post;
end;
adoquery1.next;
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把想两个表相同名字的记录到c表??? 直接一个insert不就行了
var
s:stirng;
s:=
'insert into c (select a left join b on a.name = b.name where b.name is not null)'
with adoquery do
begin
close;
sql.clear;
sql.add(s);
execSQL;
end;
var
s:stirng;
s:=
'insert into c (select a left join b on a.name = b.name where b.name is not null)'
with adoquery do
begin
close;
sql.clear;
sql.add(s);
execSQL;
end;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询