Yurij wrote:
Тип параметра не меняется при
присваивании.
Меняется. Например смотрим метод
procedure TFIBXSQLVAR.SetAsLong(aValue: Long);
begin
SetValue(SQL_LONG,SizeOf(Long),tspValue,aValue);
end;
Внутри метода TFIBXSQLVAR.SetValue попадаем на
case tspValue :InternalSetValue(Self, aSQLType,aSize,aValue);
далее в
procedure InternalSetValue(xvar: TFIBXSQLVAR; aSQLType,aSize:integer;const
Value);
....
sqltype := aSQLType or (sqltype and 1);
Move(aValue,sqldata^,sqllen);
Т.е. явно видно что при присвоении параметра в sqltype записывается
новое значение и потом это скармливается серверу.
--
--- Home Page http://ok.novgorod.net/ap ---