I was using AsWideString to pass Unicode string to TADQuery parameter.
ADQuery.Params.ParamByName('MyFld').AsWideString
But when string becomes too long I got error:
[MyFld]. Max len = [8002], actual len = [10522]
Then I decided to use AsMemo property
ADQuery.Params.ParamByName('MyFld').AsMemo
In this case my Unicode string is not displayed correctly.
What is the way to solve both problems?
AsString
getter is used to return ANSI string from the underlying database. Even in Unicode Delphi. It's a trap. – Malissa