フィールド
マッピング ルールを追加または編集するときにフィールドをカスタマイズできます。 Relational Migrator を使用すると、 計算フィールドを使用してカスタムフィールドを定義したり、カスタマイズID フィールドを使用してカスタム ID を定義したり、ソース関係列のデータ型をサポートされている BSON データ型に変換したりできます。
ユースケース
フィールド カスタマイズを使用すると、次のことが可能になります。
マッピング ルールにフィールドを含めるか除外します。
フィールド名を変更します。
ドット パスを持つ親ドキュメントに子フィールドを埋め込みます。 詳細については、「埋め込みフィールド 」を参照してください。
JavaScript 式を使用して
_id
フィールドをカスタマイズします。JavaScript 式を使用してフィールドをカスタマイズします。
null 処理動作を構成します。
動作
フィールド セクションには、関係テーブルの列から派生したフィールドのリストが含まれています。マッピング ルールには、デフォルト で各列が含まれます。移行ジョブからフィールドを除外するには、[] ボックスをオフにします。フィールド名は最初は列名(グローバル ケースが適用された)と一致します。名前を変更するには、テキストボックスを編集します。各フィールドの横にあるアイコンをクリックすると、追加のオプションが表示されます。
Relational Migrator は、ソース列のデータ型に最も近い MongoDB フィールドにデフォルトのデータ型を割り当てます。
BSON Type ドロップダウン メニューを使用して、 MongoDBフィールドのデータ型を別のデータ型に変更し、スキーマを微調整 できます。選択したタイプがソース値と互換性がない場合、変換された各フィールドは移行ジョブ中にエラーになります。移行ジョブは、ユーザー定義の最大エラーしきい値に達するまで続行されます。
親ドキュメントに子フィールドを埋め込むには、フィールドの名前を
parent.child
という形式で変更します。たとえば、フィールドの名前をproductName
からproduct.name
に変更すると、子ドキュメントの名前をname
が親ドキュメントのproduct
に埋め込まれます。 同じproduct.
プレフィックスを持つ追加のフィールドも子として埋め込まれます。ソース リレーショナル データ型を特定の MongoDB BSON データ型に変更します。
変換されたフィールドでサポートされているデータ型は次のとおりです。
Boolean
Date
Decimal
Double
Integer
Long
String
詳細については、「変換例 」を参照してください。
Null
値の動作を指定するには、 Null Handlingを使用します。 これらの値を省略したり、宛先コレクションに含めたりすることができます。フィールドのOriginal nameとOriginal typeを表示できます。 これらの値は、フィールドの発信元となる関係列に対応します。
注意
計算フィールドの場合、 BSON型は最初に Default として表示されます。つまり、実行時にフィールド型が自動的に選択されます。計算フィールドに明示的なBSON型を選択でき、移行ジョブがプロセスの一部として型を変換します。