我有两个不同得数据库这两个表结构相似
例如数据库A中有个表a,数据库B中有个表b现在我要把a表数据查询出来插入b表中用sql语句怎么写
如果用delphi但是不能用dbgrid来显示查询再插入
我只需要一个按钮两个adoconnection和ADOQUERY来实现.该怎么来实现呢.
例如数据库A中有个表a,数据库B中有个表b现在我要把a表数据查询出来插入b表中用sql语句怎么写
如果用delphi但是不能用dbgrid来显示查询再插入
我只需要一个按钮两个adoconnection和ADOQUERY来实现.该怎么来实现呢.
vSQL: string;
begin
vSQL := 'Select * Into 数据库b.dbo.new_table_name from 数据库A.dbo.old_table_name';
with adoquery1 do
begin
close;
sql.clear;
sql.text := vSQL;
ExecSQL;
end;
end;
前提是数据库在同一机器,如果不再同一机器略有不同。
query1.sql.text := sqlstr;
query1.open;sqlstr := 'select field1,field2,field3 ... from b'
query2.sql.text := sqlstr;
query2.open;用for 循环来实现
for i:=0 to query2.recordcount-1 do
begin
query1.append;
for j:=0 to query2.fieldcount-1 do
query1.fields[i].value := query2.fields[i].value query1.post;
end;
vSQL: string;
begin
vSQL := 'Select * Into 数据库b.dbo.new_table_name from OPENDATASOURCE(
''SQLOLEDB'',
''Data Source=机器名或IP地址;User ID=sa;Password=''
).数据库a.dbo.old_table_name';
with adoquery1 do
begin
close;
sql.clear;
sql.text := vSQL;
ExecSQL;
end;
end;不同服务器调用