Bde.DBTables.TBatchMove.ProblemTableName
Delphi
property ProblemTableName: TFileName read FProblemTableName write FProblemTableName;
C++
__property System::Sysutils::TFileName ProblemTableName = {read=FProblemTableName, write=FProblemTableName};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
property | published | Bde.DBTables.pas Bde.DBTables.hpp |
Bde.DBTables | TBatchMove |
説明
Paradox テーブルの名前を指定します。Paradox テーブルには,Destination テーブルのフィールド型に一致させるためにフィールドを切り詰めた Source のすべてのレコードが入ります。
ProblemTableName を設定すると,Destination と一致させるために切り詰められた項目を含む Source のレコードが入ったテーブルを作成できます。ProblemCount は,新しいテーブルに登録されたレコード数を保持します。ProblemTableName が指定されていなくても,レコード内のデータはデスティネーションテーブルに適用されるときに切り詰められるので,どの項目が切り詰められたかを判別することは困難です。
項目を切り詰めるということは,項目の値をデスティネーションフィールドの型と互換性がある値に変換することを内容します。たとえば,デスティネーションテーブルの項目が 10 文字で,ソーステーブルの対応する項目が 15 文字の場合,ソーステーブルの最後の 5 文字が切り捨てられます。値が変換できないと,TBatchMove は例外を生成します。
Mode プロパティが batCopy に設定されている場合,切り詰めは発生しません。削除処理を行う場合,項目の切り詰めが発生すると,ソーステーブルのレコードとは厳密に一致しないデスティネーションテーブルのレコードが削除される可能性があります。
メモ: AbortOnProblem プロパティが true の場合,問題がある最初のレコードで処理が終了するため,テーブルに存在するレコードは最大でも 1 つとなります。