Talend Open Studio for Data Integration では、特定のデータベース テーブルのスキーマを XML ファイルとして手動でエクスポートできます。
スキーマ エディタ/ビューアでエクスポート ボタンをクリックするだけで完了です。
しかし、どうすればジョブ内でこれを行うことができますか? 対応する成分は?または、回避策はありますか?
次のコンポーネントが必要です。
トリックは、tFixedFlowInput で必要なもの (列名、列の型、is_nullable など) を使用してスキーマを作成することです。列名は何でもかまいません。値は、tMysqlColumnListが入力するグローバル変数の 1 つでなければなりません。
tFixedFlowInputの [値] 列をクリックし、コントロールとスペースを押して、使用可能なすべての変数を表示できます。たとえば((String)globalMap.get("tMysqlColumnList_1_DATA_TYPE"))
、各列のデータ型が表示されます。
次のようなスキーマに 2 つのフィールドを追加します。
columnName ((String)globalMap.get("tMysqlColumnList_1_COLUMN_NAME"))
columnType ((String)globalMap.get("tMysqlColumnList_1_DATA_TYPE"))
そのテーブルのすべての列名とそのデータ型を一覧表示します。
多数のテーブルを反復処理する場合は、これらすべての前にtMysqlTableListを配置し、テーブル リストの各結果に対してtMysqlColumnListを反復処理するのと同様のことを行うことができます。
それが理にかなっていることを願っています。
出力の xml 構造を理解するのはあなた次第ですが、これで列の定義が得られます。