Импорт в Access

Antonious
Дата: 15.01.2012 12:04:54
Народ, привет!

Пните, пожалуйста, новичка в нужную сторону..

Есть таблица в access, в которую идет импорт из сторонней программы.

Формат данных "сырой", необработанный, то есть все данные хранятся в простой текстовой форме в одной таблице.

Так же создал целевую таблицу. То есть это та же самая первая, но уже разбитая на несколько реляционных таблиц, сделанная по всем правилам, с подстановками и т.п.

Вопрос- каким образом с наименьшими затратами автоматизировать процесс преобразования первой таблицы во вторую?

Не могу сообразить, в каком направлении копать. Может какие-то встроенные инструменты, или VBA?
EvAnd
Дата: 15.01.2012 12:19:00
Antonious
Дата: 15.01.2012 14:13:04
EvAnd,

То есть, мы просто пробегаем по записям в исходной таблице, и переносим их в целевую?

А как быть с полями, которые в целевой таблице хранятся в виде ссылок на запись в связанной таблице?

Как преобразовать текстовое поле в ссылку на запись? Запросом по связанной таблице найти индекс и подставить?
Преобразователь
Дата: 15.01.2012 15:26:19
Antonious
Как преобразовать текстовое поле в ссылку на запись?

В простейшем случае предположим, что имеется "сырая" таблица с именем "Сырая", в которой есть текстовое поле txt1, которое вам нужно преобразовать. Выполните такие действия:
- добавьте в таб. "Сырая" числовое (длинное целое) поле id_txt1;
- создайте таблицу - справочник, например, "Таб1" с полями id_txt1 - счетчик (ключевое) и txt1 - текстовое;
- перегоняем поле txt1 из "Сырая" в "Таб1" запросом
INSERT INTO Таб1 ( txt1 )
SELECT Distinct Сырая.txt1
FROM Сырая

- заполняем поле id_txt1 в "Сырая"
UPDATE Таб1 INNER JOIN Сырая ON Таб1.txt1 = Сырая.txt1 SET Сырая.id_txt1 = Таб1.id_txt1

- удаляем поле txt1 в "Сырая".
Joss
Дата: 17.01.2012 22:51:24