TZUpdateSql.FillStatement calls SetString, which accepts AnsiString, for UnicodeString data.
Possible fix is in the attachment
[patch_done] TZUpdateSQL - Implicit AnsiString typecast with
Moderators: gto, EgonHugeist, olehs
[patch_done] TZUpdateSQL - Implicit AnsiString typecast with
You do not have the required permissions to view the files attached to this post.
Last edited by olehs on 10.11.2009, 10:44, edited 1 time in total.
Related this patch I noted that
src\component\ZDbcCachedResultSet.pas
procedure TZAbstractRODataset.SetStatementParams
{$IFNDEF VER150BELOW} // not available on Delhi 7
ftWideString:
Statement.SetUnicodeString(I + 1, Param.AsWideString);
{$ENDIF}
while
src\component\ZDatasetUtils.pas
procedure FetchFromResultSet
ftWidestring:
RowAccessor.SetUnicodeString(FieldIndex, ResultSet.GetUnicodeString(ColumnIndex));
So my question is: shoudn't be protected if you use Delphi 7?
src\component\ZDbcCachedResultSet.pas
procedure TZAbstractRODataset.SetStatementParams
{$IFNDEF VER150BELOW} // not available on Delhi 7
ftWideString:
Statement.SetUnicodeString(I + 1, Param.AsWideString);
{$ENDIF}
while
src\component\ZDatasetUtils.pas
procedure FetchFromResultSet
ftWidestring:
RowAccessor.SetUnicodeString(FieldIndex, ResultSet.GetUnicodeString(ColumnIndex));
So my question is: shoudn't be protected if you use Delphi 7?