I've got Oracle XE installed on Debian linux and the character set is configured to AL32UTF8. There are several client applications that connects to a database from Windows with the different locales - French etc, not English. That's ok with all the client data these applications put into database, nothing converted and text data in French represents correctly.
But texts in audit tables looks like '??????' if contains any not-english character. I suppose this is because audit records go to database in the different locale and it's not dependent on the client's globalization/locale settings.
How this globalization issue can be fixed? thanks!
The likely option is the the audit data is saved correctly in French, but YOUR client doesn't support it, so your Oracle client translate French letters to ???? for you.
SELECT username, ascii(username) from DBA_AUDIT_TRAIL;
--optionally with a WHERE clause to limit it to a few suspected rowsIf all the ??? characters have the same ascii code, Oracle stores ???. If every ??? has a different ascii code, Oracle stores French letters and you client NLS_LANG configuration does not support French letters.
I hope that helps you troubleshooting it...