1 Reply Latest reply: Jul 10, 2013 4:55 AM by rukbat RSS

    Unicode characterset AL32UTF8 behaves bizarrely

    1004148

      while using data-type nvarchar2 and sending an email, 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

       

      declare

      MailBody varCHAR2(4000);

      MailBody1 nvarCHAR2(4000);

      MailBody2 nCHAR(4000);

      MailBody3 varCHAR2(4000);

      begin

      MailBody := '|  € test @#$  £ ';

      MailBody1 :='nvarCHAR2 = ' ||  MailBody;

      MailBody2 := 'nCHAR = ' || MailBody;

      UTL_MAIL.send(sender =>'pbhatia@sapient.com',

                 recipients => 'pbhatia@sapient.com',

                 subject => 'test',

                 message => MailBody|| MailBody1 || MailBody2,

                  mime_type => 'text/html; charset=utf-8' 

                  );

                 

      end;

       

       

       

      we are using NLS_CHARACTERSET as AL32UTF8

       

      Kindly suggest the right datatype to be used and the cause of this issue.