データ型のマッピング
メモ: ボーランド データベース エンジン(BDE)は推奨されなくなったので、今後は機能強化されません。たとえば、BDE では Unicode はサポートされません。BDE を使用して新規に開発を始めないでください。既存のデータベース アプリケーションを BDE から dbExpress に移行することを検討してください。
batAppend モードでは、バッチ移動コンポーネントは、ソーステーブルの列のデータ型に基づいて転送先テーブルを作成します。列と型は、ソーステーブルと転送先テーブルでの位置に基づいて照合されます。つまり、転送元テーブルの最初の列が転送先テーブルの最初の列に対応し、以下も順に対応します。
デフォルトの列マッピングを変更するには、Mappings プロパティを使用します。Mappings プロパティは、列マッピングのリスト(1 行に 1 つずつ)です。このリストは 2 つの形式のどちらかで示されます。ソーステーブルの列を転送先テーブルの同じ名前の列にマッピングするには、一致する列名を指定する単純なリストを使用できます。たとえば、次のマッピングはソーステーブルの ColName という列が転送先テーブルの同じ名前の列にマッピングされるように指定しています。
ColName
ソーステーブルの SourceColName という列を転送先テーブルの DestColName という列にマッピングする場合は、次のような構文になります。
DestColName = SourceColName
ソースおよびターゲットの列のデータ型が同じではない場合、バッチ移動処理は「最適な方法」を試します。必要に応じて文字データ型を切り詰め、可能な場合は制限範囲内で変換を実行します。たとえば、CHAR(10) 列を CHAR(5) 列にマッピングすると、ソースの列で最後の 5 文字が切り詰められます。
変換の例として、文字データ型のソース列を整数型のターゲット列にマッピングした場合を考えます。バッチ移動処理では、文字値「5」が対応する整数値に変換されます。値を変換できないとエラーになります。エラーの詳細は、「バッチ移動エラーの処理」を参照してください。
異なるテーブルタイプの間でデータを移動する場合、バッチ移動コンポーネントはデータ型をデータセットのサーバーのタイプに基づいて適切に変換します。種類の異なるサーバー間でのマッピングに関する最新の表については、BDE のオンラインヘルプを参照してください。
メモ: SQL サーバーデータベースへのデータのバッチ移動には、データベースサーバーと、適切な SQL Link がインストールされた Delphi が必要です。サードパーティの適切な ODBC ドライバがインストールされていれば、 ODBC を使用できます。