Talend Open Studio: создание таблицы в MySQL динамически - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь выяснить, как сделать динамическое создание таблиц в MySQL, используя Talend.В других инструментах ETL, таких как Pentaho, для этого есть специальный компонент, называемый «метаданные».Итак, мой пример использования следующий: 1) Создать базу данных вручную в MySQL 2) Использовать Talend для чтения информации заголовка CSV и использовать это как поля таблицы, которая будет создана в MySQL с использованием Talend.

У меня естьискал и не смог найти ничего для этой конкретной функции в Интернете.[Примечание: использование Talend Open Studio для больших данных Версия: 6.4.1]

ОБНОВЛЕНИЕ:

Я достиг прогресса в этом, но столкнулся с проблемами, пытаясь сгенерировать первичный ключ на MySQLвывод с использованием функции NumericSequence.У моих данных изначально нет первичного ключа, но я хочу включить один: у меня есть скриншот прикрепленной карты:

enter image description here

Также яполучить ошибку компиляции / сборки.Кажется, ему не нравится генерация первичного ключа.

См. Прикрепленное изображение.

enter image description here

А вот и tMySQLOutputнастройки для первичного ключа:

enter image description here

Дополнительная работа выполнена:

Я изменил имя первичного ключа в компоненте tMySQL насопоставьте имя компонента области вывода tMap, я получаю ту же ошибку компиляции.Я приложу эту ошибку здесь:

enter image description here

1 Ответ

2 голосов
/ 02 мая 2019

Для динамического создания таблиц MySQL в Talend вы можете использовать один из параметров « Действие над таблицей » в компонентах tMysqlOutput (в вашем случае, «Создать таблицу ...»).

https://help.talend.com/reader/4I8tDQGtrOPDl5MXAS3Q~w/aDNKleHXlevILu9pnbCoNg

Не забудьте правильно определить поля PK для дальнейших вставок, обновлений, удалений ...

Затем, при необходимости, через ваш любимый инструмент для работы с базами данных (MySQL Workbench,DBeaver или другой), вы можете получить сценарии (и) DDL (и DML).

Я надеюсь, что это ответит на вашу проблему / вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...