title: Running into string constant size limits in insert statements with Oracle
body: <p>I'm trying to copy a row from our production DB to my own little personal Oracle Express DB to repro a bug, since I can't really step into the code on production.  Unfortunately, this row involves a column that serializes some sort of data structure into a <code>blob</code> column type, laughing in the face of the normalization gods.  Here's the <code>INSERT</code>:</p>
  
  <pre><code>INSERT INTO TPM_VIEWS VALUES(
  5,
  'Test Repro View',
  665,
  1,
  '0001000000ffffffff01000000000000000c020000003a44414c2c205... //About 7600 characters
  );
  </code></pre>
  
  <p>I've tried running this in Aqua Data Studio 10 and I get:</p>
  
  <pre><code>ORA-01704: string literal too long
  </code></pre>
  
  <p>Next I tried pasting it into SQL*Plus, which gives me:</p>
  
  <pre><code>SP2-0027: Input is too long (&gt; 2499 characters) - line ignored
  </code></pre>
  
  <p>Lastly, I tried pasting the whole thing into foo.sql and ran <code>@foo.sql</code> which gives me:</p>
  
  <pre><code>SQL&gt; @c:\foo.sql
  Input truncated to 7499 characters
  SP2-0027: Input is too long (&gt; 2499 characters) - line ignored
  ERROR:
  ORA-01756: quoted string not properly terminated
  </code></pre>
  
  <p>What's the super secret Oracle expert way to do this?  And no, I don't have access to the Oracle server itself so I can't run any command line backup or export utilities.  Thanks!</p>
  
  <p><strong>UPDATE:</strong></p>
  
  <p>I also tried splitting apart the string by sprinkling some <code>' || '</code>'s around randomly, which gives me the error:</p>
  
  <pre><code> ORA-01489: result of string concatenation is too long
  </code></pre>