title: To_CHAR result cannot go in VARCHAR2
body: <p>There is somthing strange I wouls like to understand</p>
  
  <p>let's say we have this code :</p>
  
  <pre><code>DECLARE
  a varchar2(6);
  
  BEGIN
    a := '000001';
  END;
  </code></pre>
  
  <p>This works good. No problem</p>
  
  <p>Now we have this : </p>
  
  <pre><code>DECLARE
  a varchar2(6);
  
  BEGIN
    a := TO_CHAR(1, '000000');
  END;
  </code></pre>
  
  <p>It does not work:</p>
  
  <p>ORA-06502: PL/SQL: numeric or value error: character string buffer too small</p>
  
  <p>why?</p>
  
  <p>A problem with nls_language maybe?  what problem? what solution?</p>
  
  <p>Thank you</p>