TQuerySql=function(const sql: string):boolean of object;
TGetRowSql=function(var Result: TData):boolean of object;
TErrorSql=procedure(var err: Integer; var ErrNm: string) of object;
TGetRowSql=function(var Result: TData):boolean of object;
TErrorSql=procedure(var err: Integer; var ErrNm: string) of object;
А во-вторых, объясните мне всё-таки преимущества списка указателей на функции перед нормальным классом с виртуальными функциями

Не проще ли сделать общего предка с виртуальными функциями для всех компонент, являющимися базой данных?