title: Single quote argument is converted to double quoted argument when passed to oracle function and called from shell script
body: <p>I am trying to execute one oracle function from shell script.
  This function just takes two string arguments and returns full their concatenated string.
  Here is the oracle function</p>
  
  <pre><code>create or replace package temp as
      function getName(v_fname in varchar2, v_lname varchar2) return varchar2;
  end temp;
  
  create or replace package body temp as
      function getName(v_fname in varchar2, v_lname in varchar2) return varchar2 is
      v_fullname varchar2(17);
      begin
          --DBMS_OUTPUT.PUT_LINE(v_name);
          v_fullname := concat(v_fname,v_lname);
          return v_fullname;
      end getName;
  end temp;
  /
  </code></pre>
  
  <p>Here is snippet of shell script</p>
  
  <pre><code>fullname=$(sqlplus -s myuser/password@DBinstance &lt;&lt; !
  set heading off
  set feedback off
  SELECT TEMP.GETNAME('Vishal','Tavande') FROM DUAL;
  !)
  echo $fullname
  </code></pre>
  
  <p>When I execute <code>SELECT TEMP.GETNAME('Vishal','Tavande') FROM DUAL</code> in Oracle, I can get the result as 'VishalTavande'; but when I execute this in Shell, what I get is</p>
  
  <blockquote>
    <p>fullname=SELECT TEMP.GETNAME("Vishal","Tavande") FROM DUAL ERROR at
    line 1: ORA-00904: "Vishal": invalid identifier</p>
  </blockquote>
  
  <p>Any help is really appreciable.
  Thanks</p>