I have a problem with saving text to an Oracle CLOB field using Direct Oracle Access components (DOA). When I post update to a database some of international characters (win-1250) get lost. But this doesn't happen in our production or test environment. It only happens -- of course -- at client's side. I have eliminated all transformations of text in code and I get down to the line that loads a stream into a blob field. But even this looks ok -- until I refresh data. Server then returns "?" character instead of some
international characters.
The weirdest thing is that this works on same client's computer with prior version of same application (maybe also an older version of DOA?)! If we connect to client's database from our computers, everything works fine with
new version also.
Code looks something like this:
procedure Save;
var Q: TOracleDataset;
AStream: TStringStream;
begin
...
Q.Edit;
TBlobField(Q.FieldByName('CONTENT')).LoadFromStream(AStream);
Q.Post;
// here everything looks ok
Q.Close;
...
Q.Open;
// blob has ? characters
...
end;
Any ideas?
Thanks,
Robert
international characters.
The weirdest thing is that this works on same client's computer with prior version of same application (maybe also an older version of DOA?)! If we connect to client's database from our computers, everything works fine with
new version also.
Code looks something like this:
procedure Save;
var Q: TOracleDataset;
AStream: TStringStream;
begin
...
Q.Edit;
TBlobField(Q.FieldByName('CONTENT')).LoadFromStream(AStream);
Q.Post;
// here everything looks ok
Q.Close;
...
Q.Open;
// blob has ? characters
...
end;
Any ideas?
Thanks,
Robert