-
Есть две разные базы(соединение в одной программе, на разные IP) через компоненты FIB(FIBDatabase) реализация на Delphi. Нужно сравнить две таблицы по полям одинаковые по структуре. Пытаюсь сделать что-то вроде этого; ПРИМЕР select x1.fld from table x1 where not EXISTS(select x2.fld from table x2 where x2.fld=x1.fld) - выбрать записи которые не совпадают.
но с pfibdataset не могу указать вторую таблицу в другой базе, названия таблиц совпадают. и не могу продолжить DM.efSDS.SelectSQL.Clear; DM.efSDS.SelectSQL.Add('SELECT X1.fld FROM X1 WHERE....');
На форуме видел и это ПРИМЕР: SELECT a.fld1, a.fld2 FROM db1.table1 a, db2.table1 b WHERE a.id=b.id, и это не мойму как сделать.
Ясно все когда две таблицы в одной базе. Как мне в коде запроса сослатся на другую таблицу в другой базе( подключенные в разных FIBDatabase,fibdataset ) с таким же именем, не могу понять как практически реализовать это. И вывести как угодно , допустим DBGrid. Может кто подскажет как на Delphi это реализовать, примеры.
-
-
Если сравнивать надо не на лету, а нечто вроде синхронизации/репликации, то, как вариант, можно экспортнуть таблицу во внешнюю в одной БД и приаттачить в ее в другой.
-
Если ИМЕННО IB6, то никак.
|