Страница 1 из 1
Копировать данные из Таб1 в Таб2
Добавлено: 02 май 2012, 08:22
agentbond007
Здравствуйте!
Есть 2 таблицы Таб1(источник данных) и Таб2(потребитель, пустая таблица).
Общие между ними поля (значения, ключи): RowID, Type, ID, атрибутивка идентичная
В зависимости от Type(цифра) требуется перекинуть данные из таб1 в таб2.
Как это сделать?
Пока удалось связать эти две таблицы по типам, а как перекинуть данные, ведь там нужен RowID для Update?
У связанной таблицы по два поля с одним названием Type, ID...

Re: Копировать данные из Таб1 в Таб2
Добавлено: 02 май 2012, 12:27
pearlovka
Не совсем понятен ваш вопрос, исходных данных не хватает,как получилась Таб2 изначально, почему она пустая? Поэтому может не по теме мой ответ, но я вижу такой порядок действий.
Сделайте запрос из таблицы Таб1 по полю Type (через SQL запрос например) получится таблица Query1 (нумерация может быть другой, если уже создавались запросы) и сохраните этот запрос, как таблица Таб2. Структуру таблицы Таб2 можно изменить из меню Таблица -Изменить -Перестроить.
Или вы пишете на МапБейсике и там что-то не получается при обновлении таблиц?
Re: Копировать данные из Таб1 в Таб2
Добавлено: 02 май 2012, 12:57
agentbond007
Пишу программу конвертер из одной таблицы в другую, использую MapInfo + Delphi.
Имеется таблица источник Таб1 - геообъекты + атрибутика(50 полей) из неё нужно получить Таб2 с другой атрибутикой(другие названия полей и значения, 60 полей).
Первая задача скопировать геообъекты, вторая заполнить атрибутивку Таб2 из Таб1.
С первой справился а со второй задачей застрял.
Re: Копировать данные из Таб1 в Таб2
Добавлено: 02 май 2012, 14:00
pearlovka
А зачем 2 одинаково названных поля в одной таблице?
Вопрос не совсем по мапинфо

Больше по Делфи в связке с мапинфо, файлы табовские?
Я когда писала на мапбейсике корректировку аттрибутики, то вытаскивала данные во временную таблицу, обзывая поля во временной таблице как мне надо, и поля апдейтила по уникальным полям.
Re: Копировать данные из Таб1 в Таб2
Добавлено: 02 май 2012, 23:56
Boris
А что мешает открыть окно мапбайсика, что есть в мапинфо? Мапинфо же честная недалекая программулька - что делает, то и пишет в команды (ну вернее наоборот) в 95% процентах случаев.
И если хоть раз видели - она копирует поля по номеру колонки, употребляя для этого специальные названия колонок COL1, COL2 и т.п. и плевать ей на то, что отображает она поля с одним именем или они сошлись в нем в результате сопоставления таблиц.
PS
Для того, что в больших СУБД называется оператором JOIN, в мапинфо есть упрощенный вариант в виде совмещения через условие в Where. В 95% случае получаемый запрос обновляем по первой таблице - все поля 1-ой таблицы можно обновить стандартным оператором Update примененным к такому запросу.
Re: Копировать данные из Таб1 в Таб2
Добавлено: 03 май 2012, 10:55
agentbond007
Спасибо всем!
Ещё раз прочитал свой вопрос, и нашел ответ. Атрибутивки у меня разные поэтому проблема решена.
Связываю 2 таблицы и перекидываю данные в выборке, апдейтю по RowID выборки.
