Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 71d40963b505df4524269198e237b3e3 > files > 600

virtuoso-opensource-doc-6.1.4-2.fc14.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
 <head profile="http://internetalchemy.org/2003/02/profile">
  <link rel="foaf" type="application/rdf+xml" title="FOAF" href="http://www.openlinksw.com/dataspace/uda/about.rdf" />
  <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" />
  <meta name="dc.title" content="Function: string_output - Virtuoso Functions Guide" />
  <meta name="dc.subject" content="Function: string_output - Virtuoso Functions Guide" />
  <meta name="dc.creator" content="OpenLink Software Documentation Team ;&#10;" />
  <meta name="dc.copyright" content="OpenLink Software, 1999 - 2009" />
  <link rel="top" href="index.html" title="OpenLink Virtuoso Universal Server: Documentation" />
  <link rel="search" href="/doc/adv_search.vspx" title="Search OpenLink Virtuoso Universal Server: Documentation" />
  <link rel="parent" href="functions.html" title="Chapter Contents" />
  <link rel="prev" href="appendixa.html" title="Appendix" />
  <link rel="next" href="functions.html#.html" title="" />
  <link rel="shortcut icon" href="../images/misc/favicon.ico" type="image/x-icon" />
  <link rel="stylesheet" type="text/css" href="doc.css" />
  <link rel="stylesheet" type="text/css" href="/doc/translation.css" />
  <title>Function: string_output - Virtuoso Functions Guide</title>
  <meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" />
  <meta name="author" content="OpenLink Software Documentation Team ;&#10;" />
  <meta name="copyright" content="OpenLink Software, 1999 - 2009" />
  <meta name="keywords" content="" />
  <meta name="GENERATOR" content="OpenLink XSLT Team" />
 </head>
 <body>
  <div id="header">
    <a name="fn_string_output" />
    <img src="../images/misc/logo.jpg" alt="" />
    <h1>22. Virtuoso Functions Guide - string_output</h1>
  </div>
  <div id="navbartop">
   <div>
      <a class="link" href="functions.html">Chapter Contents</a> | <a class="link" href="fn_strchr.html" title="strchr">Prev</a> | <a class="link" href="fn_string_output_flush.html" title="string_output_flush">Next</a>
   </div>
  </div>
  <div id="currenttoc">
   <form method="post" action="/doc/adv_search.vspx">
    <div class="search">Keyword Search: <br />
        <input type="text" name="q" /> <input type="submit" name="go" value="Go" />
    </div>
   </form>
   <div>
      <a href="http://www.openlinksw.com/">www.openlinksw.com</a>
   </div>
   <div>
      <a href="http://docs.openlinksw.com/">docs.openlinksw.com</a>
   </div>
    <br />
   <div>
      <a href="index.html">Book Home</a>
   </div>
    <br />
   <div>
      <a href="contents.html">Contents</a>
   </div>
   <div>
      <a href="preface.html">Preface</a>
   </div>
    <br />
   <div>
      <a class="selected" href="functions.html">Virtuoso Functions Guide</a>
   </div>
    <br />
   <div>
      <a href="functions.html#admin">Administration</a>
   </div>
   <div>
      <a href="functions.html#aggr">Aggregate Functions</a>
   </div>
   <div>
      <a href="functions.html#array">Array Manipulation</a>
   </div>
   <div>
      <a href="functions.html#bpel">BPEL APIs</a>
   </div>
   <div>
      <a href="functions.html#backup">Backup</a>
   </div>
   <div>
      <a href="functions.html#compression">Compression</a>
   </div>
   <div>
      <a href="functions.html#cursors">Cursor</a>
   </div>
   <div>
      <a href="functions.html#time">Date &amp; Time Manipulation</a>
   </div>
   <div>
      <a href="functions.html#debug">Debug</a>
   </div>
   <div>
      <a href="functions.html#dict">Dictionary Manipulation</a>
   </div>
   <div>
      <a href="functions.html#encoding">Encoding &amp; Decoding</a>
   </div>
   <div>
      <a href="functions.html#file">File Manipulation</a>
   </div>
   <div>
      <a href="functions.html#ft">Free Text</a>
   </div>
   <div>
      <a href="functions.html#hash">Hashing / Cryptographic</a>
   </div>
   <div>
      <a href="functions.html#ldap">LDAP</a>
   </div>
   <div>
      <a href="functions.html#localization">Locale</a>
   </div>
   <div>
      <a href="functions.html#mail">Mail</a>
   </div>
   <div>
      <a href="functions.html#misc">Miscellaneous</a>
   </div>
   <div>
      <a href="functions.html#number">Number</a>
   </div>
   <div>
      <a href="functions.html#phrz">Phrases</a>
   </div>
   <div>
      <a href="functions.html#rdf">RDF data</a>
   </div>
   <div>
      <a href="functions.html#rmt">Remote SQL Data Source</a>
   </div>
   <div>
      <a href="functions.html#repl">Replication</a>
   </div>
   <div>
      <a href="functions.html#soap">SOAP</a>
   </div>
   <div>
      <a href="functions.html#sql">SQL</a>
   </div>
   <div>
      <a class="selected" href="functions.html#string">String</a>
   </div>
   <div class="selected">
    <div>
        <a href="fn_ascii.html">ascii</a>
    </div>
    <div>
        <a href="fn_blob_to_string.html">blob_to_string</a>
    </div>
    <div>
        <a href="fn_blob_to_string_output.html">blob_to_string_outpu...</a>
    </div>
    <div>
        <a href="fn_chr.html">chr</a>
    </div>
    <div>
        <a href="fn_ends_with.html">ends_with</a>
    </div>
    <div>
        <a href="fn_initcap.html">initcap</a>
    </div>
    <div>
        <a href="fn_isblob.html">isblob</a>
    </div>
    <div>
        <a href="fn_isstring.html">isstring</a>
    </div>
    <div>
        <a href="fn_lcase.html">lcase</a>
    </div>
    <div>
        <a href="fn_left.html">left</a>
    </div>
    <div>
        <a href="fn_length.html">length</a>
    </div>
    <div>
        <a href="fn_locate.html">locate</a>
    </div>
    <div>
        <a href="fn_ltrim.html">ltrim</a>
    </div>
    <div>
        <a href="fn_make_string.html">make_string</a>
    </div>
    <div>
        <a href="fn_regexp_instr.html">regexp_instr</a>
    </div>
    <div>
        <a href="fn_regexp_like.html">regexp_like</a>
    </div>
    <div>
        <a href="fn_regexp_match.html">regexp_match</a>
    </div>
    <div>
        <a href="fn_regexp_parse.html">regexp_parse</a>
    </div>
    <div>
        <a href="fn_regexp_replace.html">regexp_replace</a>
    </div>
    <div>
        <a href="fn_regexp_substr.html">regexp_substr</a>
    </div>
    <div>
        <a href="fn_repeat.html">repeat</a>
    </div>
    <div>
        <a href="fn_replace.html">replace</a>
    </div>
    <div>
        <a href="fn_right.html">right</a>
    </div>
    <div>
        <a href="fn_rtrim.html">rtrim</a>
    </div>
    <div>
        <a href="fn_search_excerpt.html">search_excerpt</a>
    </div>
    <div>
        <a href="fn_serialize.html">serialize</a>
    </div>
    <div>
        <a href="fn_space.html">space</a>
    </div>
    <div>
        <a href="fn_split_and_decode.html">split_and_decode</a>
    </div>
    <div>
        <a href="fn_sprintf.html">sprintf</a>
    </div>
    <div>
        <a href="fn_sprintf_inverse.html">sprintf_inverse</a>
    </div>
    <div>
        <a href="fn_sprintf_iri.html">sprintf_iri</a>
    </div>
    <div>
        <a href="fn_sprintf_iri_or_null.html">sprintf_iri_or_null</a>
    </div>
    <div>
        <a href="fn_sprintf_or_null.html">sprintf_or_null</a>
    </div>
    <div>
        <a href="fn_starts_with.html">starts_with</a>
    </div>
    <div>
        <a href="fn_strcasestr.html">strcasestr</a>
    </div>
    <div>
        <a href="fn_strchr.html">strchr</a>
    </div>
    <div>
        <a href="fn_strcontains.html">strcontains</a>
    </div>
    <div>
        <a class="selected" href="fn_string_output.html">string_output</a>
    </div>
    <div>
        <a href="fn_string_output_flush.html">string_output_flush</a>
    </div>
    <div>
        <a href="fn_string_output_gz_compress.html">string_output_gz_com...</a>
    </div>
    <div>
        <a href="fn_string_output_string.html">string_output_string</a>
    </div>
    <div>
        <a href="fn_string_to_file.html">string_to_file</a>
    </div>
    <div>
        <a href="fn_strrchr.html">strrchr</a>
    </div>
    <div>
        <a href="fn_strstr.html">strstr</a>
    </div>
    <div>
        <a href="fn_subseq.html">subseq</a>
    </div>
    <div>
        <a href="fn_substring.html">substring</a>
    </div>
    <div>
        <a href="fn_tmp_file_name.html">tmp_file_name</a>
    </div>
    <div>
        <a href="fn_trim.html">trim</a>
    </div>
    <div>
        <a href="fn_ucase.html">ucase</a>
    </div>
    <div>
        <a href="fn_upper.html">upper</a>
    </div>
   </div>
   <div>
      <a href="functions.html#txn">Transaction</a>
   </div>
   <div>
      <a href="functions.html#type">Type Mapping</a>
   </div>
   <div>
      <a href="functions.html#uddi">UDDI</a>
   </div>
   <div>
      <a href="functions.html#udt">User Defined Types &amp; The CLR</a>
   </div>
   <div>
      <a href="functions.html#vad">VAD</a>
   </div>
   <div>
      <a href="functions.html#jvmpl">Virtuoso Java PL API</a>
   </div>
   <div>
      <a href="functions.html#bif">Virtuoso Server Extension Interface (VSEI)</a>
   </div>
   <div>
      <a href="functions.html#ws">Web &amp; Internet</a>
   </div>
   <div>
      <a href="functions.html#xml">XML</a>
   </div>
   <div>
      <a href="functions.html#XPATH">XPATH &amp; XQUERY</a>
   </div>
    <br />
   <div>
      <a href="functionidx.html">Functions Index</a>
   </div>
    <br />
  </div>
  <div id="text">
    <h2>string_output</h2>
    <div class="refpurpose">make a string output stream</div>
    <div class="funcsynopsis">
        <span class="funcdef">
     <span class="function">string_output</span>
     </span>
	(<span class="paramdefoptional">[in <span class="optional">threshold</span> integer]</span>);
      </div>
  
  
  
  <div class="refsect1">
      <div class="refsect1title">Description</div>
    <p>A string output stream is a special object that may be used to
    buffer arbitrarily long streams of data. They are useful for handling data
    that would not otherwise fit within normal <span class="computeroutput">varchar</span> size
    limitations. The HTTP output functions optionally take a string output
    stream handle as a parameter and then output to said stream instead of
    the HTTP client. A string output stream can be assigned to a database column in insert or update, causing the characters written to the stream to be assigned to the column as a narrow string.
    </p>
    <p>The function
    <a href="fn_string_output_string.html">string_output_string
    </a>
     can be used to produce a varchar out of a string output stream. It may
     be called repeatedly to obtain several copies of the data.
    <a href="fn_http_rewrite.html">http_rewrite</a>
    can be used to flush a string output stream.</p>
    <p>If a string output stream is passed to the function
    <a href="fn_result.html">result</a> the
    data stored in it is sent to the client.</p>
    <p>The string output object cannot be copied. It cannot therefore be
    assigned between two variables or passed by value (as an IN parameter.)
    It can be passed by reference (OUT, INOUT parameter.)</p>
  </div>
  <div class="refsect1">
    <div class="refsect1title">Parameters</div>
    <div class="refsect2">
        <span class="refsect2title">threshold – </span>
	Optional size threshold, exceeding this the object will be
	    stored in a temp directory specified by &#39;TempSesDir&#39; INI parameter.
    </div>
</div>
  <div class="refsect1">
      <div class="refsect1title">Examples</div>
    <a name="ex_string_output" />
      <div class="example">
        <div class="exampletitle">Handling string output streams</div>
      <p>This example takes a string as an argument, creates a new string output stream, writes the string into the stream and inserts stream contents to a DB table.</p>
      <div>
          <pre class="screen">
create table
foo_table (
a integer identity,
b long varchar,
primary key (a));

create procedure
foo_out (in x varchar)
{
  declare str_out any;
  declare str varchar;

-- Pass correct result metadata to client
  result_names (str);

-- Get a new string output stream
  str_out := string_output();

  http (x, str_out);

-- These produce the same result
  result (string_output_string (str_out));
  result (str_out);

-- insert string output contents
  insert into foo_table (b) values (str_out);

-- Write it again to the string output
  http (concat (&#39; &#39;, x), str_out);

  result (str_out);
}
;

SQL&gt; foo_out (&#39;Ceterum censeo, Carthaginem esse delendum!&#39;);
str
VARCHAR NOT NULL
_______________________________________________________________________________

Ceterum censeo, Carthaginem esse delendum!
Ceterum censeo, Carthaginem esse delendum!
Ceterum censeo, Carthaginem esse delendum! Ceterum censeo, Carthaginem esse delendum!

2 Rows. -- 2 msec.

SQL&gt; select * from foo_table;
a                 b
INTEGER NOT NULL  LONG VARCHAR
_______________________________________________________________________________

1                 Ceterum censeo, Carthaginem esse delendum!

1 Rows. -- 2 msec.
</pre>
        </div>
    </div>
  </div>
  <div class="refsect1">
      <div class="refsect1title">See Also</div>
    <p>
        <a href="fn_string_output_string.html">
    string_output_stream</a>,
    <a href="fn_http.html">http</a>,
    <a href="fn_http_value.html">http_value</a>
      </p>
  </div>
</div>
  <div id="footer">
    <div>Copyright© 1999 - 2009 OpenLink Software All rights reserved.</div>
   <div id="validation">
    <a href="http://validator.w3.org/check/referer">
        <img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" />
    </a>
    <a href="http://jigsaw.w3.org/css-validator/">
        <img src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" height="31" width="88" />
    </a>
   </div>
  </div>
 </body>
</html>