while using nvarchar2 data-type and sending an email, the special characters like (€ ,£) get replaced by bizarre characters for example
| € test @#$ £
gets replaced by
| � test @#$ �
However using varchar, varchar2 and char datatype singularly gives the right result but not in multiple usage.
Multiple usage means as below
MailBody := '| € test @#$ £ ';
MailBody1 :='nvarCHAR2 = ' || MailBody;
MailBody2 := 'nCHAR = ' || MailBody;
recipients => 'email@example.com',
subject => 'test',
message => MailBody|| MailBody1 || MailBody2,
mime_type => 'text/html; charset=utf-8'
we are using NLS_CHARACTERSET as AL32UTF8
Kindly suggest the right datatype to be used and the cause of this issue.
Message was edited by: 1004148
If your database character set is AL32UTF8, there is no reason to use NVARCHAR2 data type. You can just use VARCHAR2. The wrong behavior may be a bug in UTL_MAIL. However, some investigation would be needed to confirm this.