var
cat, tbl: OleVariant;
i, TblCount: Integer;
begin
//打开含有链接表的数据库
cat := CreateOleObject('ADOX.Catalog');
cat.ActiveConnection := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=e:/db1.mdb';
try
//遍历表,寻找链接表,同时删除
TblCount := cat.Tables.Count;
for i := TblCount - 1 downto 0 do
begin
tbl := cat.Tables;
if tbl.Type = 'LINK' then
cat.Tables.Delete(i);
end;
//创建新的链接信息
tbl := CreateOleObject('ADOX.Table');
//指出链接表的信息
tbl.Name := 'Test_1'; //链接后的表的名称
tbl.ParentCatalog := cat;
//链接SQL SERVER server : 127.0.0.1 table : top100
tbl.Properties('Jet OLEDB:Link Provider String') := 'ODBC;Driver=SQL Server;Server=127.0.0.1;database=test;uid=sa;pwd=123';
tbl.Properties('Jet OLEDB:Remote Table Name') := 'top100';
tbl.Properties('Jet OLEDB:Create Link') := True;
//添加连接表
cat.Tables.Append(tbl);
finally
Cat := UnAssigned;
end;
end;