From RAD Studio API Documentation
Jump to: navigation, search



TFDBatchMoveSQLWriter = class(TFDBatchMoveSQLDriver, IFDBatchMoveWriter)


class PASCALIMPLEMENTATION TFDBatchMoveSQLWriter : public TFDBatchMoveSQLDriver


Type Visibility Source Unit Parent
class public
FireDAC.Comp.BatchMove.SQL FireDAC.Comp.BatchMove.SQL


TFDBatchMoveSQLWriter is used to directly connect to a DBMS using a TFDConnection component.

Use TFDBatchMoveSQLWriter to connect to the DBMS where you want to copy the data using TFDBatchMove.

The main difference between TFDBatchMoveSQLWriter and TFDBatchMoveDataSetWriter is that the TFDBatchMoveSQLWriter uses the FireDAC ArrayDML feature and provides maximum possible speed of data writing.

Set a destination table name using the TableName property. Instead of using the the TableName property, set an SQL query providing the destination data structure using the ReadSQL property, and set the SQL writing query using the WriteSQL property. Optionally set GeneratorName to provide a database generator / sequence name to populate auto-incrementing fields.

Note: You cannot use the TableName property and the ReadSQL property at the same time.

Choose TFDBatchMoveSQLWriter as the Writer property of the TFDBatchMove.

TFDBatchMoveSQLWriter supports all the possible TFDBatchMove data movement modes.

Note: The mode dmAppendUpdate is only supported when the database supports MERGE, INSERT OR REPLACE or similar DML commands.

In the modes dmAppend, dmUpdate, dmAppendUpdate, and dmDelete the destination table must have primary key.

See Also