Author: buildbot
Date: Mon Aug 26 17:03:49 2013
New Revision: 876265

Log:
Staging update by buildbot for jena

Modified:
    websites/staging/jena/trunk/content/   (props changed)
    websites/staging/jena/trunk/content/documentation/jdbc/index.html

Propchange: websites/staging/jena/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Aug 26 17:03:49 2013
@@ -1 +1 @@
-1517072
+1517603

Modified: websites/staging/jena/trunk/content/documentation/jdbc/index.html
==============================================================================
--- websites/staging/jena/trunk/content/documentation/jdbc/index.html (original)
+++ websites/staging/jena/trunk/content/documentation/jdbc/index.html Mon Aug 
26 17:03:49 2013
@@ -106,12 +106,13 @@
   <p>Jena JDBC is a set of libraries which provide SPARQL over JDBC driver 
implementations.</p>
 <p>This is a pure SPARQL over JDBC implementation, there is no attempt to 
present the underlying
 RDF data model as a relational model through the driver and only SPARQL 
queries and updates
-are supported.  Otherwise it is a fully fledge type 4 JDBC driver.</p>
+are supported.</p>
+<p>It provides type 4 drivers in that they are pure Java based but the drivers 
are not JDBC compliant since
+by definition they <strong>do not</strong> support SQL.</p>
 <h2 id="documentation">Documentation</h2>
 <ul>
 <li><a href="#overview">Overview</a></li>
 <li><a href="#basic-usage">Basic Usage</a></li>
-<li><a href="#making-queries">Making Queries</a></li>
 <li><a href="#alternatives">Alternatives</a></li>
 <li><a href="drivers.html">Jena JDBC Drivers</a></li>
 <li><a href="artifacts.html">Maven Artifacts for Jena JDBC</a></li>
@@ -171,7 +172,7 @@ memory which can use lots of memory when
 <p>The following takes you through the basic usage of the in-memory JDBC 
driver.  The code should be familiar
 to anyone who has used JDBC before and is easily used with our other <a 
href="drivers.html">drivers</a> simply by
 changing the connection URL appropriately.</p>
-<h3 id="making-a-connection">Making a Connection</h3>
+<h3 id="establishing-a-connection">Establishing a Connection</h3>
 <p>Firstly we should ensure that the driver we wish to use is registered with 
the JDBC driver manager, a static
 method is provided for this:</p>
 <div class="codehilite"><pre><span class="n">MemDriver</span><span 
class="p">.</span><span class="n">register</span><span class="p">();</span>
@@ -180,32 +181,37 @@ method is provided for this:</p>
 
 <p>Once this is done we can then make a JDBC connection just be providing an 
appropriate connection URL:</p>
 <div class="codehilite"><pre><span class="c1">// Make a connection using the 
In-Memory driver starting from an empty dataset</span>
-<span class="n">Connection</span> <span class="n">conn</span> <span 
class="o">=</span> <span class="n">DriverManager</span><span 
class="p">.</span><span class="n">getConnection</span><span 
class="p">(</span><span 
class="s">&quot;jdbc:jena:men:empty=true&quot;</span><span class="p">);</span>
+<span class="n">Connection</span> <span class="n">conn</span> <span 
class="o">=</span> <span class="n">DriverManager</span><span 
class="p">.</span><span class="n">getConnection</span><span 
class="p">(</span><span 
class="s">&quot;jdbc:jena:mem:empty=true&quot;</span><span class="p">);</span>
 </pre></div>
 
 
 <p>Now we can go ahead and use the connection as you would normally.</p>
-<h3 id="making-queries">Making Queries</h3>
+<h3 id="performing-queries">Performing Queries</h3>
 <p>You make queries as you would with any JDBC driver, the only difference 
being that the queries must be SPARQL:</p>
 <div class="codehilite"><pre><span class="c1">// Need a statement</span>
 <span class="n">Statement</span> <span class="n">stmt</span> <span 
class="o">=</span> <span class="n">conn</span><span class="p">.</span><span 
class="n">createStatement</span><span class="p">();</span>
 
-<span class="c1">// Make a query</span>
-<span class="n">ResultSet</span> <span class="n">rset</span> <span 
class="o">=</span> <span class="n">stmt</span><span class="p">.</span><span 
class="n">executeQuery</span><span class="p">(</span><span 
class="s">&quot;SELECT DISTINCT ?type WHERE { ?s a ?type } LIMIT 
100&quot;</span><span class="p">);</span>
+<span class="n">try</span> <span class="p">{</span>
+  <span class="c1">// Make a query</span>
+  <span class="n">ResultSet</span> <span class="n">rset</span> <span 
class="o">=</span> <span class="n">stmt</span><span class="p">.</span><span 
class="n">executeQuery</span><span class="p">(</span><span 
class="s">&quot;SELECT DISTINCT ?type WHERE { ?s a ?type } LIMIT 
100&quot;</span><span class="p">);</span>
 
-<span class="c1">// Iterate over results</span>
-<span class="k">while</span> <span class="p">(</span><span 
class="n">rest</span><span class="p">.</span><span class="n">next</span><span 
class="p">())</span> <span class="p">{</span>
-  <span class="c1">// Print out type as a string</span>
-  <span class="n">System</span><span class="p">.</span><span 
class="n">out</span><span class="p">.</span><span class="n">println</span><span 
class="p">(</span><span class="n">rset</span><span class="p">.</span><span 
class="n">getString</span><span class="p">(</span><span 
class="s">&quot;type&quot;</span><span class="p">));</span>
-<span class="p">}</span>
+  <span class="c1">// Iterate over results</span>
+  <span class="k">while</span> <span class="p">(</span><span 
class="n">rest</span><span class="p">.</span><span class="n">next</span><span 
class="p">())</span> <span class="p">{</span>
+    <span class="c1">// Print out type as a string</span>
+    <span class="n">System</span><span class="p">.</span><span 
class="n">out</span><span class="p">.</span><span class="n">println</span><span 
class="p">(</span><span class="n">rset</span><span class="p">.</span><span 
class="n">getString</span><span class="p">(</span><span 
class="s">&quot;type&quot;</span><span class="p">));</span>
+  <span class="p">}</span>
 
-<span class="c1">// Clean up</span>
-<span class="n">rset</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
-<span class="n">stmt</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
+  <span class="c1">// Clean up</span>
+  <span class="n">rset</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
+<span class="p">}</span> <span class="n">catch</span> <span 
class="p">(</span><span class="n">SQLException</span> <span 
class="n">e</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">System</span><span class="p">.</span><span 
class="n">err</span><span class="p">.</span><span class="n">println</span><span 
class="p">(</span><span class="s">&quot;SQL Error - &quot;</span> <span 
class="o">+</span> <span class="n">e</span><span class="p">.</span><span 
class="n">getMessage</span><span class="p">());</span>
+<span class="p">}</span> <span class="n">finally</span> <span 
class="p">{</span>
+  <span class="n">stmt</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
+<span class="p">}</span>
 </pre></div>
 
 
-<h3 id="making-updates">Making Updates</h3>
+<h3 id="performing-updates">Performing Updates</h3>
 <p>You make updates as you would with any JDBC driver.  Again the main 
difference is that updates must be SPARQL,
 one downside of this is that SPARQL provides no way to indicate the number of 
triples/quads affected by an update
 so the JDBC driver will either return <code>0</code> for successful updates or 
throw a <code>SQLException</code> for failed updates:</p>
@@ -218,11 +224,10 @@ so the JDBC driver will either return <c
   <span class="n">System</span><span class="p">.</span><span 
class="n">out</span><span class="p">.</span><span class="n">println</span><span 
class="p">(</span><span class="s">&quot;Update succeeded&quot;</span><span 
class="p">);</span>
 <span class="p">}</span> <span class="n">catch</span> <span 
class="p">(</span><span class="n">SQLException</span> <span 
class="n">e</span><span class="p">)</span> <span class="p">{</span>
   <span class="n">System</span><span class="p">.</span><span 
class="n">out</span><span class="p">.</span><span class="n">println</span><span 
class="p">(</span><span class="s">&quot;Update Failed &quot;</span> <span 
class="o">-</span> <span class="o">+</span> <span class="n">e</span><span 
class="p">.</span><span class="n">getMessage</span><span class="p">());</span>
+<span class="p">}</span> <span class="n">finally</span> <span 
class="p">{</span>    
+  <span class="c1">// Clean up</span>
+  <span class="n">stmt</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
 <span class="p">}</span>
-
-<span class="c1">// Clean up</span>
-<span class="n">rset</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
-<span class="n">stmt</span><span class="p">.</span><span 
class="n">close</span><span class="p">();</span>
 </pre></div>
 
 


Reply via email to