バッチ移動モードの指定

提供: RAD Studio
移動先: 案内検索

TBatchMove の利用:インデックス への移動

メモ: ボーランド データベース エンジン(BDE)は推奨されなくなったので、今後は機能強化されません。たとえば、BDE では Unicode はサポートされません。BDE を使用して新規に開発を始めないでください。既存のデータベース アプリケーションを BDE から dbExpress に移行することを検討してください。

Mode プロパティはバッチ移動コンポーネントが実行する処理を指定します。

バッチ移動モード :

プロパティ 用途

batAppend

転送先テーブルにレコードを追加する

batUpdate

ソーステーブルのレコードで対応する転送先テーブルのレコードを更新する。更新は転送先テーブルのインデックスに基づいて行われる

batAppendUpdate

一致するレコードが転送先テーブルに存在する場合は、それを更新する。対応するレコードがない場合、転送先テーブルにレコードを追加する。

batCopy

転送元テーブルの構造に基づいて転送先テーブルを作成する。転送先テーブルがすでに存在する場合、そのテーブルは削除され、新しく作成される

batDelete

転送先テーブルのレコードのうち転送元テーブルのレコードに対応するものを削除する。

レコードの追加

データを追加するには、ターゲットデータセットは既存のテーブルを表していなければなりません。追加処理では、必要に応じてターゲットデータセットに適したデータ型とデータサイズにデータが変換されます。変換できない場合は例外が生成され、データは追加されません。

レコードを更新する

データを更新するには、ターゲットデータセットは既存のテーブルを表していなければならず、レコードを照合できるインデックスが定義されていなければなりません。一次インデックスフィールドを照合に使用する場合、ソースデータセット内のレコードのインデックスフィールドと一致するインデックスフィールドを持つターゲットデータセット内のレコードが、ソースデータで上書きされます。更新処理では、必要に応じてターゲットデータセットに適したデータ型とデータサイズにデータが変換されます。

レコードの追加更新

データを追加および更新するには、ターゲットデータセットは既存のテーブルを表していなければならず、レコードを照合できるインデックスが定義されていなければなりません。一次インデックスフィールドを照合に使用する場合、ソースデータセット内のレコードのインデックスフィールドと一致するインデックスフィールドを持つターゲットデータセット内のレコードが、ソースデータで上書きされます。一致するレコードがターゲットデータセット内にない場合は、ソースデータセットのデータがターゲットデータセットに追加されます。追加更新処理では、必要に応じてターゲットデータセットに適したデータ型とデータサイズにデータが変換されます。

データセットのコピー

ソースデータセットをコピーするには、ターゲットデータセットは既存のテーブルを表すものであってはなりません。既存のテーブルを表している場合にバッチ移動処理を行うと、そのテーブルがソースデータセットのコピーで上書きされます。

ソースデータセットとターゲットデータセットで使用されているデータベースエンジンが異なる場合(たとえば Paradox と InterBase など)、可能な限りソースデータセットに近い構造を持つターゲットデータセットが作成され、必要であればデータ型とデータサイズの変換が自動的に実行されます。

メモ:  TBatchMove では、インデックス、制約、ストアドプロシージャなどのメタデータ構造はコピーされません。したがって、メタデータオブジェクトは、適切なデータベースサーバー上作成しなければなりません。

レコードの削除

ターゲットデータセット内のデータを削除するには、そのデータセットが既存のテーブルを表していなければならず、レコードを照合できるインデックスが定義されていなければなりません。一次インデックスフィールドを照合に使用する場合、ソースデータセット内のレコードのインデックスフィールドと一致するインデックスフィールドを持つターゲットデータセット内のレコードが、転送先テーブルから削除されます。

関連項目