The Commands sample shows you how to set up column mappings.
Table of Contents
Location
You can find the MappingColumns sample project at:
- Start | Programs | Embarcadero RAD Studio Sydney | Samples and then navigate to:
Object PascalDatabaseFireDACSamplesDApt LayerMappingColumns
- Subversion Repository:
- You can find Delphi code samples in GitHub Repositories. Search by name into the samples repositories according to your RAD Studio version.
How to Use the Sample
- Navigate to the location given above and open
MappingColumns.dproj. - Press F9 or choose Run > Run.
- Click on the Use Connection Definition combo box and select an option.

Files
| File in Delphi | Contains |
|---|---|
MappingColumns.dprojMappingColumns.dpr | The project itself. |
fMappingColumns.pasfMappingColumns.fmx | The main form. |
Implementation
To set up the columns mapping, the sample implements the following steps.
Create table adapter
var
oAdapt: IFDDAptTableAdapter;
// ...
begin
// create table adapter
FDCreateInterface(IFDDAptTableAdapter, oAdapt);
Assign command
var
oComm: IFDPhysCommand;
// ...
begin
// ...
with oAdapt do begin
FConnIntf.CreateCommand(oComm);
SelectCommand := oComm;
SelectCommand.Prepare('select * from {id FDQA_map1}');
Set source result set name
SourceRecordSetName := EncodeName('FDQA_map1');
Set the DatSTable name
Set the DatSTable name where the rows are fetched.
DatSTableName := 'mapper';
Set the UpdateTable name
UpdateTableName := EncodeName('FDQA_map2');
Set the UpdateTable name
UpdateTableName := EncodeName('FDQA_map2');
Setup column mappings
ColumnMappings.Add('id1', 'num', 'id2');
ColumnMappings.Add('name1', 'title', 'name2');
Fetch rows
Define;
Fetch;
Update changes to RDBMS
To append rows, implement the following code:
for i := 0 to 9 do
DatSTable.Rows.Add([i, 'first' + IntToStr(i)]); // Note that new rows will be added to the FDQA_map2(id2, name2) table.
Then, the sample updates the changes to the RDBMS.
Update;
Please go to the link below if you want to check the original post of Embarcadero for this sample:
http://docwiki.embarcadero.com/CodeExamples/Sydney/en/FireDAC.MappingColumns_Sample
Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Free Delphi Community Edition Free C++Builder Community Edition







