为什么需要字段类型映射?
作为通用型数据引擎的FIREDAC或者UNIDAC,驱动某一种数据库以后,总有一些数据库的一些字段类型,数据引擎不能识别,反应到程序中就是数据引擎不能正确地读取该字段的值 。
如何解决?
那么,此时就会要用到数据引擎的字段类型映射,将源字段类型——不识别的类型,映射成数据引擎能识别的类型。
附FIREDAC字段类型映射的代码:
例如,map TEXT columns to dtAnsiString and INT columns to dtInt64:
with ADQuery1.FormatOptions do begin
OwnMapRules := True;
with MapRules do begin
SourceDataType := dtMemo;
TargetDataType := dtAnsiString;
end;
with MapRules do begin
SourceDataType := dtInt32;
TargetDataType := dtInt64;
end;
end;