2012-06-06 3 views
1

Я пытаюсь сделать (в основном) автоматическую копию строки из одного бэкэнда в другой, поскольку бэкэнд используется, но не полностью развит (некоторые таблицы сделаны, другие ; добавление завершенных данных в более продвинутый db в конце дня).Синтаксис для импорта из разных БД - MS Access

Я хотел бы знать, что синтаксис для оператора SQL, который:

INSERT INTO tblMyBetterTable * IN "C:\\path_to_db\db.accdb" 
FROM tblMyTable IN "C:\\path_to_in_use_db\in-use-db.accdb" 

Синтаксис не является правильным, но я искал какое-то время и не может узнать, как .. я мы видели, как импортировать из одной таблицы в другую и т. д., но не через бэкэнд. Если это не ясно, я бы хотел в основном сделать копию таблицы всех строк в in-use-db.accdb от tblMyTable до последней версии бэкэнда db.accdb's table tblMyBetterTable.

ответ

2

Я предлагаю вам попробовать DoCmd.TransferDatabase

Для запроса, вам нужно что-то на линии:

SELECT * INTO NewTable 
FROM [;DATABASE=Z:\Docs\Test.accdb].Table1 

Или наоборот:

SELECT * INTO [;DATABASE=Z:\Docs\Test.accdb].NewTable 
FROM Table1 

Чтобы вставить в существующий стол:

INSERT INTO table1 
SELECT * 
FROM [;DATABASE=Z:\Docs\Test.accdb].Table1 
+0

DoCmd.TransferDatabase, похоже, больше похожа на функцию импорта, доступную как мастер; так как это база данных, а не файл excel, я не могу просто добавить. Я попробую эти выборки. Я также хотел бы добавить предложения WHERE, чтобы избежать дублирования и т. Д., Поэтому я ищу запрос. – StuckAtWork

+0

Эти заявления также делают то же самое; они удаляют мою старую таблицу и производят новую. Мне нужен запрос, который просто добавляет определенные поля из таблицы в DB1 в поля в таблице в DB2. Конечно, есть способ сделать это. – StuckAtWork

+0

Общая идея заключается в том, что я предлагаю вам пример, и вы бежите с ним. – Fionnuala