mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-17 03:39:33 +02:00
* fcl-db: TParam.SetAs***: set variant datatype before value assignment. Mantis #24728. Patch by Andrew Brunner.
git-svn-id: trunk@25233 -
This commit is contained in:
parent
a5517cd3d4
commit
83e843fe2a
@ -607,84 +607,84 @@ end;
|
|||||||
|
|
||||||
Procedure TParam.SetAsBlob(const AValue: TBlobData);
|
Procedure TParam.SetAsBlob(const AValue: TBlobData);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftBlob;
|
FDataType:=ftBlob;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsBoolean(AValue: Boolean);
|
Procedure TParam.SetAsBoolean(AValue: Boolean);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftBoolean;
|
FDataType:=ftBoolean;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsCurrency(const AValue: Currency);
|
Procedure TParam.SetAsCurrency(const AValue: Currency);
|
||||||
begin
|
begin
|
||||||
Value:=Avalue;
|
|
||||||
FDataType:=ftCurrency;
|
FDataType:=ftCurrency;
|
||||||
|
Value:=Avalue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsDate(const AValue: TDateTime);
|
Procedure TParam.SetAsDate(const AValue: TDateTime);
|
||||||
begin
|
begin
|
||||||
Value:=Avalue;
|
|
||||||
FDataType:=ftDate;
|
FDataType:=ftDate;
|
||||||
|
Value:=Avalue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsDateTime(const AValue: TDateTime);
|
Procedure TParam.SetAsDateTime(const AValue: TDateTime);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftDateTime;
|
FDataType:=ftDateTime;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsFloat(const AValue: Double);
|
Procedure TParam.SetAsFloat(const AValue: Double);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftFloat;
|
FDataType:=ftFloat;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsInteger(AValue: Longint);
|
Procedure TParam.SetAsInteger(AValue: Longint);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftInteger;
|
FDataType:=ftInteger;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsLargeInt(AValue: LargeInt);
|
Procedure TParam.SetAsLargeInt(AValue: LargeInt);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftLargeint;
|
FDataType:=ftLargeint;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsMemo(const AValue: string);
|
Procedure TParam.SetAsMemo(const AValue: string);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftMemo;
|
FDataType:=ftMemo;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Procedure TParam.SetAsSmallInt(AValue: LongInt);
|
Procedure TParam.SetAsSmallInt(AValue: LongInt);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftSmallInt;
|
FDataType:=ftSmallInt;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsString(const AValue: string);
|
Procedure TParam.SetAsString(const AValue: string);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
if FDataType <> ftFixedChar then
|
if FDataType <> ftFixedChar then
|
||||||
FDataType := ftString;
|
FDataType := ftString;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TParam.SetAsWideString(const aValue: WideString);
|
procedure TParam.SetAsWideString(const aValue: WideString);
|
||||||
begin
|
begin
|
||||||
Value := aValue;
|
|
||||||
if FDataType <> ftFixedWideChar then
|
if FDataType <> ftFixedWideChar then
|
||||||
FDataType := ftWideString;
|
FDataType := ftWideString;
|
||||||
|
Value := aValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Procedure TParam.SetAsTime(const AValue: TDateTime);
|
Procedure TParam.SetAsTime(const AValue: TDateTime);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftTime;
|
FDataType:=ftTime;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetAsVariant(const AValue: Variant);
|
Procedure TParam.SetAsVariant(const AValue: Variant);
|
||||||
@ -720,14 +720,14 @@ end;
|
|||||||
|
|
||||||
Procedure TParam.SetAsWord(AValue: LongInt);
|
Procedure TParam.SetAsWord(AValue: LongInt);
|
||||||
begin
|
begin
|
||||||
Value:=AValue;
|
|
||||||
FDataType:=ftWord;
|
FDataType:=ftWord;
|
||||||
|
Value:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TParam.SetAsFMTBCD(const AValue: TBCD);
|
procedure TParam.SetAsFMTBCD(const AValue: TBCD);
|
||||||
begin
|
begin
|
||||||
FValue:=VarFmtBCDCreate(AValue);
|
|
||||||
FDataType:=ftFMTBcd;
|
FDataType:=ftFMTBcd;
|
||||||
|
FValue:=VarFmtBCDCreate(AValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Procedure TParam.SetDataType(AValue: TFieldType);
|
Procedure TParam.SetDataType(AValue: TFieldType);
|
||||||
|
Loading…
Reference in New Issue
Block a user