title: Maximum length of command line argument that can be passed to SQL*Plus?
body: <p>I am calling SQL*Plus from Linux C Shell:</p>
  
  <p><code>sqlplus username/password @file.sql var1 var2 var3</code></p>
  
  <p><strong>If I pass a string as <code>var1</code>, how long can this string be?</strong> </p>
  
  <p>Is it governed by the OS? In this case:</p>
  
  <p><code>Linux version 2.6.9-100.ELsmp (mockbuild@x86-010.build.bos.redhat.com) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-11)) #1 SMP Tue Feb 1 12:17:32 EST 2011</code></p>
  
  <p><strong>Update:</strong> Empirical testing yielded the following results:</p>
  
  <ul>
  <li>A command line argument of 5200 characters gave the error, "Word too long."</li>
  <li>1300 characters then produced the SQL*Plus error, "string beginning "(000796384..." is too long. maximum size is 239 characters."</li>
  <li>As soon as I got under 239 chars all was well.</li>
  </ul>
  
  <p>I think I'll use <code>sqlldr</code> to overcome this.</p>