|
From: <de...@us...> - 2002-12-11 15:52:52
|
Update of /cvsroot/dbunit/dbunit/docs
In directory sc8-pr-cvs1:/tmp/cvs-serv28422
Modified Files:
anttask.html components.html faq.html howto.html index.html
Log Message:
New docs to support the new ant step parameter <query> for the <export> step.
Index: anttask.html
===================================================================
RCS file: /cvsroot/dbunit/dbunit/docs/anttask.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** anttask.html 17 Jul 2002 01:55:20 -0000 1.2
--- anttask.html 11 Dec 2002 15:52:47 -0000 1.3
***************
*** 1,3 ****
!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- #BeginTemplate "/Templates/main.dwt" -->
--- 1,3 ----
!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- #BeginTemplate "/Templates/main.dwt" -->
***************
*** 5,15 ****
<meta http-equiv="Content-Style-Type" content="text/css">
<link href="stylesheet.css" rel="stylesheet" type="text/css">
! <!-- #BeginEditable "doctitle" -->
<title>The Dbunit Framework - Ant Task</title>
! <!-- #EndEditable -->
</head>
<body>
<table cellspadding = 0 cellspacing = 0 border = 0 width="100%">
! <tr height="100">
<td class="logo" width = 200><img src="images/logo.jpg" width=200 height=100></td>
<td class="header"></td>
--- 5,15 ----
<meta http-equiv="Content-Style-Type" content="text/css">
<link href="stylesheet.css" rel="stylesheet" type="text/css">
! <!-- #BeginEditable "doctitle" -->
<title>The Dbunit Framework - Ant Task</title>
! <!-- #EndEditable -->
</head>
<body>
<table cellspadding = 0 cellspacing = 0 border = 0 width="100%">
! <tr height="100">
<td class="logo" width = 200><img src="images/logo.jpg" width=200 height=100></td>
<td class="header"></td>
***************
*** 17,24 ****
</table>
<table cellspadding = 0 cellspacing = 0 border = 0>
! <tr>
!
! <td class="menu" nowrap valign="top" >
! <p><a href="index.html">Home</a><br>
<br>
<a href="intro.html">Introduction</a><br>
--- 17,24 ----
</table>
<table cellspadding = 0 cellspacing = 0 border = 0>
! <tr>
!
! <td class="menu" nowrap valign="top" >
! <p><a href="index.html">Home</a><br>
<br>
<a href="intro.html">Introduction</a><br>
***************
*** 37,53 ****
<br>
</p>
! <div align="center"><a href="http://sourceforge.net"> <img alt="SourceForge Logo" border="0" height="31" width="88" src="http://sourceforge.net/sflogo.php?group_id=47439">
</a></div>
<br>
! <div align="center"><a href="http://www.silphid.com/"><img alt="Silphid Creations"
src="images/silphid.gif" border=0></a></div>
</td>
! <td class="body" valign="top"> <!-- #BeginEditable "body" -->
<h2>Ant Integration</h2>
<h3>Installation</h3>
! The steps required to add the DbUnit task to your system are:
<ol>
<li>Add the DbUnit jar to Ant's classpath. </li>
! <li>Add a <taskdef> element to your build script as follows:
<pre class=code><taskdef name="dbunit" classname="org.dbunit.ant.DbUnitTask"/></pre>
</li>
--- 37,53 ----
<br>
</p>
! <div align="center"><a href="http://sourceforge.net"> <img alt="SourceForge Logo" border="0" height="31" width="88" src="http://sourceforge.net/sflogo.php?group_id=47439">
</a></div>
<br>
! <div align="center"><a href="http://www.silphid.com/"><img alt="Silphid Creations"
src="images/silphid.gif" border=0></a></div>
</td>
! <td class="body" valign="top"> <!-- #BeginEditable "body" -->
<h2>Ant Integration</h2>
<h3>Installation</h3>
! The steps required to add the DbUnit task to your system are:
<ol>
<li>Add the DbUnit jar to Ant's classpath. </li>
! <li>Add a <taskdef> element to your build script as follows:
<pre class=code><taskdef name="dbunit" classname="org.dbunit.ant.DbUnitTask"/></pre>
</li>
***************
*** 55,93 ****
</ol>
<h3>Usage </h3>
! <p>Executes either a single transaction, or a group of transactions, under
the DbUnit database testing framework.</p>
<h4>Parameters</h4>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>driver</td>
<td>Class name of the jdbc driver</td>
<td>Yes</td>
</tr>
! <tr>
<td>url</td>
<td>Database connection url</td>
<td>Yes</td>
</tr>
! <tr>
<td>userid</td>
<td>Database username</td>
<td>Yes</td>
</tr>
! <tr>
<td>password</td>
<td>Database password</td>
<td>Yes</td>
</tr>
! <tr>
<td>schema </td>
<td>Database schema</td>
<td>No</td>
</tr>
! <tr>
<td>useQualifiedTableNames</td>
<td>Set System.property dbunit.qualified.table.names <br>
--- 55,93 ----
</ol>
<h3>Usage </h3>
! <p>Executes either a single transaction, or a group of transactions, under
the DbUnit database testing framework.</p>
<h4>Parameters</h4>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>driver</td>
<td>Class name of the jdbc driver</td>
<td>Yes</td>
</tr>
! <tr>
<td>url</td>
<td>Database connection url</td>
<td>Yes</td>
</tr>
! <tr>
<td>userid</td>
<td>Database username</td>
<td>Yes</td>
</tr>
! <tr>
<td>password</td>
<td>Database password</td>
<td>Yes</td>
</tr>
! <tr>
<td>schema </td>
<td>Database schema</td>
<td>No</td>
</tr>
! <tr>
<td>useQualifiedTableNames</td>
<td>Set System.property dbunit.qualified.table.names <br>
***************
*** 95,99 ****
<td>No</td>
</tr>
! <tr>
<td>supportBatchStatement</td>
<td>Set System.property<br>
--- 95,99 ----
<td>No</td>
</tr>
! <tr>
<td>supportBatchStatement</td>
<td>Set System.property<br>
***************
*** 105,121 ****
<h4>Parameters specified as nested elements</h4>
<table cellspadding = 0 border = 1 >
! <tr>
<td>operation</td>
! <td>
! <p>Use nested <operation> elements to specify which DbUnit operation
to perform on the particular file. <br>
</p>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>type</td>
<td>Type of Database operation to perform. Supported types are<br>
--- 105,121 ----
<h4>Parameters specified as nested elements</h4>
<table cellspadding = 0 border = 1 >
! <tr>
<td>operation</td>
! <td>
! <p>Use nested <operation> elements to specify which DbUnit operation
to perform on the particular file. <br>
</p>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>type</td>
<td>Type of Database operation to perform. Supported types are<br>
***************
*** 126,139 ****
<td>Yes</td>
</tr>
! <tr>
<td>src</td>
<td>The xml source upon which the operation is to be performed</td>
<td>Yes</td>
</tr>
! <tr>
<td>format</td>
! <td>Format type of supplied source file. Possible values are "flat"
or "xml". Defaults to <a class="code">"flat"</a></td>
! <td>
<p>No</p>
</td>
--- 126,139 ----
<td>Yes</td>
</tr>
! <tr>
<td>src</td>
<td>The xml source upon which the operation is to be performed</td>
<td>Yes</td>
</tr>
! <tr>
<td>format</td>
! <td>Format type of supplied source file. Possible values are "flat"
or "xml". Defaults to <a class="code">"flat"</a></td>
! <td>
<p>No</p>
</td>
***************
*** 143,169 ****
</tr>
<!--
! <tr>
<td>composite</td>
! <td>
! <p>Use nested <a class="code"><composite></a> operation elements
! to combine multiple <a class="code"><operation></a>s (on the
same file) into a single one.</p>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>src</td>
<td>The xml source upon which the operation is to be performed</td>
<td>Yes</td>
</tr>
! <tr>
<td>flat</td>
! <td>If true, use <a class="code">FlatXmlDataSet</a> type in the
! supplied src file. Otherwise use <a class="code">XmlDataSet</a>.
Defaults to <a class="code">true</a></td>
! <td>
<p>No</p>
</td>
--- 143,169 ----
</tr>
<!--
! <tr>
<td>composite</td>
! <td>
! <p>Use nested <a class="code"><composite></a> operation elements
! to combine multiple <a class="code"><operation></a>s (on the
same file) into a single one.</p>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>src</td>
<td>The xml source upon which the operation is to be performed</td>
<td>Yes</td>
</tr>
! <tr>
<td>flat</td>
! <td>If true, use <a class="code">FlatXmlDataSet</a> type in the
! supplied src file. Otherwise use <a class="code">XmlDataSet</a>.
Defaults to <a class="code">true</a></td>
! <td>
<p>No</p>
</td>
***************
*** 172,180 ****
<h4>Parameters specified as nested elements </h4>
<table border="1">
! <tr>
<td>operation</td>
! <td>See above definition for details. The src and flat attributes
! are supplied as attributes to the <a class="code"><composite></a>
! step and should not be attempted to be overridden by the nested
<a class="code"><operation></a> step.</td>
</tr>
--- 172,180 ----
<h4>Parameters specified as nested elements </h4>
<table border="1">
! <tr>
<td>operation</td>
! <td>See above definition for details. The src and flat attributes
! are supplied as attributes to the <a class="code"><composite></a>
! step and should not be attempted to be overridden by the nested
<a class="code"><operation></a> step.</td>
</tr>
***************
*** 183,213 ****
</tr>
-->
! <tr>
<td>export</td>
! <td>
! <p>Use nested <a class="code"><export></a> operation elements
! to export the database to the supplied filename. The default operation
! is to <a class="code"><export></a> the entire database to
! the destination filename with the supplied dataset type. You can
! specify individual tables to<br>
! <a class="code"><export></a> by nesting them under the <export>
step.</p>
<table width="100%" border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>dest</td>
<td>The xml destination filename</td>
<td>Yes</td>
</tr>
! <tr>
<td>format</td>
! <td>Format type of supplied destination file. Possible values
! are "flat", "xml" or "dtd". Defaults
to <a class="code">"flat"</a></td>
! <td>
<p>No</p>
</td>
--- 183,213 ----
</tr>
-->
! <tr>
<td>export</td>
! <td>
! <p>Use nested <a class="code"><export></a> operation elements
! to export the database to the supplied filename. The default operation
! is to <a class="code"><export></a> the entire database to
! the destination filename with the supplied dataset type. You can
! specify individual tables or queries to<br>
! <a class="code"><export></a> by nesting them under the <export>
step.</p>
<table width="100%" border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>dest</td>
<td>The xml destination filename</td>
<td>Yes</td>
</tr>
! <tr>
<td>format</td>
! <td>Format type of supplied destination file. Possible values
! are "flat", "xml" or "dtd". Defaults
to <a class="code">"flat"</a></td>
! <td>
<p>No</p>
</td>
***************
*** 216,231 ****
<h4>Parameters specified as nested elements </h4>
<table border="1">
! <tr>
<td>table</td>
! <td>
! <p>Use nested <a class=code><table></a> elements to <a class=code><export></a>
specific tables. </p>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>name</td>
<td>Name of the database table to export.</td>
--- 216,231 ----
<h4>Parameters specified as nested elements </h4>
<table border="1">
! <tr>
<td>table</td>
! <td>
! <p>Use nested <a class=code><table></a> elements to <a class=code><export></a>
specific tables. </p>
<table border="1">
! <tr>
<td><b>Attribute</b></td>
<td><b>Description</b></td>
<td><b>Required</b></td>
</tr>
! <tr>
<td>name</td>
<td>Name of the database table to export.</td>
***************
*** 235,238 ****
--- 235,262 ----
</td>
</tr>
+ <tr>
+ <td>query</td>
+ <td>
+ <p>Use nested <a class=code><query></a> elements to <a class=code><export></a>
+ data according to a sql statement. </p>
+ <table border="1">
+ <tr>
+ <td><b>Attribute</b></td>
+ <td><b>Description</b></td>
+ <td><b>Required</b></td>
+ </tr>
+ <tr>
+ <td>name</td>
+ <td>Name to reference the sql statement.</td>
+ <td>No</td>
+ </tr>
+ <tr>
+ <td>sql</td>
+ <td>The sql to execute. You can use either SELECT * from Mytable or SELECT col1, col4 from MyTable</td>
+ <td>No</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
</table>
</td>
***************
*** 241,294 ****
<h3>Examples</h3>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <operation type="UPDATE" src="updateFile.xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and executes the UPDATE operation contained within the FlatXmlDataSet
file updateFile.xml.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <operation type="INSERT" src="insertFile.xml"/><br> <operation type="UPDATE" src="updateFile.xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver.
! It then executes the INSERT operation contained within the FlatXmlDataSet
file insertFile.xml <br>
! followed by the execution of the UPDATE operation contained within the
FlatXmlDataSet file updateFile.xml.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <operation type="UPDATE" src="updateFile.xml" flat="false"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and executes the UPDATE operation contained within the XmlDataSet file
updateFile.xml.</p>
<!--
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <composite src="compositeFile.xml"><br> <operation type="DELETE"/><br> <operation type="INSERT"/><br> </composite><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver.
! It then executes the CompositeOperation, DELETE and then UPDATE, contained
within the FlatXmlDataSet file updateFile.xml.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <composite src="compositeFile.xml" flat="false"><br> <operation type="INSERT"/><br> <operation type="UPDATE"/><br> </composite><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver.
! It then executes the CompositeOperation, DELETE and then UPDATE, contained
within the XmlDataSet file updateFile.xml.</p>
-->
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportFile.xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the database to the given destination file as a FlatXmlDataSet.
</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportNonFlatFile.xml" format="xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the database to the given destination file as an XmlDataSet.
</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="export.dtd" format="dtd"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
and <br>
exports the document type definition (dtd) describing the flat xml format.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportFile.xml"><br> <table name="FOO"/><br> <table name="BAR"/><br> </export><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the contents of the provided tables to the given destination
file as an FlatXmlDataSet. <br>
</p>
! <!-- #EndEditable -->
<hr>
! <div align="center">
<p><font size="2">Copyright ©2002, Manuel Laflamme, All Rights Reserved</font></p>
! <p><font size="1"><a href="index.html">Home</a> - <a href="intro.html">Introduction</a>
! - <a href="components.html">Core Classes</a> - <a href="anttask.html">Ant
! Task</a> - <a href="howto.html">How-to Guides</a> - <a href="bestpractices.html">Best
! Practices</a> - <a href="properties.html">Properties</a> - <a href="api/index.html">API
! Reference</a> - <a href="faq.html">FAQ</a> - <a href="changes.html">Changes
! History</a> - <a href="download.html">Download</a> - <a href="support.html">Support</a>
- <a href="resources.html">Resources</a></font></p>
<font size="1">$Revision$ $Date$</font> </div>
--- 265,324 ----
<h3>Examples</h3>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <operation type="UPDATE" src="updateFile.xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and executes the UPDATE operation contained within the FlatXmlDataSet
file updateFile.xml.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <operation type="INSERT" src="insertFile.xml"/><br> <operation type="UPDATE" src="updateFile.xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver.
! It then executes the INSERT operation contained within the FlatXmlDataSet
file insertFile.xml <br>
! followed by the execution of the UPDATE operation contained within the
FlatXmlDataSet file updateFile.xml.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <operation type="UPDATE" src="updateFile.xml" flat="false"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and executes the UPDATE operation contained within the XmlDataSet file
updateFile.xml.</p>
<!--
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <composite src="compositeFile.xml"><br> <operation type="DELETE"/><br> <operation type="INSERT"/><br> </composite><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver.
! It then executes the CompositeOperation, DELETE and then UPDATE, contained
within the FlatXmlDataSet file updateFile.xml.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <composite src="compositeFile.xml" flat="false"><br> <operation type="INSERT"/><br> <operation type="UPDATE"/><br> </composite><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver.
! It then executes the CompositeOperation, DELETE and then UPDATE, contained
within the XmlDataSet file updateFile.xml.</p>
-->
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportFile.xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the database to the given destination file as a FlatXmlDataSet.
</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportNonFlatFile.xml" format="xml"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the database to the given destination file as an XmlDataSet.
</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="export.dtd" format="dtd"/><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
and <br>
exports the document type definition (dtd) describing the flat xml format.</p>
<pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportFile.xml"><br> <table name="FOO"/><br> <table name="BAR"/><br> </export><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the contents of the provided tables to the given destination
file as an FlatXmlDataSet. <br>
</p>
! <pre> <dbunit driver="org.hsqldb.jdbcDriver"<br> url="jdbc:hsqldb:."<br> userid="sa"<br> password=""><br> <export dest="exportFile.xml"><br> <table name="FOO"/><br> <query name="BAR" sql="SELECT COL1, COL2, COL3 as 'COLSPECIAL' FROM BAR WHERE COL1=4"/><br> </export><br> </dbunit></pre>
! <p> Connects to the database given in url as the dbunit user using the org.hsqldb.jdbcDriver
! and exports the contents of the provided tables to the given destination file as an FlatXmlDataSet. The contents
! of the BAR table are only shown where col1 is equal to 4. Col3 is renamed COLSPECIAL as well.
! <br>
! </p>
! <!-- #EndEditable -->
<hr>
! <div align="center">
<p><font size="2">Copyright ©2002, Manuel Laflamme, All Rights Reserved</font></p>
! <p><font size="1"><a href="index.html">Home</a> - <a href="intro.html">Introduction</a>
! - <a href="components.html">Core Classes</a> - <a href="anttask.html">Ant
! Task</a> - <a href="howto.html">How-to Guides</a> - <a href="bestpractices.html">Best
! Practices</a> - <a href="properties.html">Properties</a> - <a href="api/index.html">API
! Reference</a> - <a href="faq.html">FAQ</a> - <a href="changes.html">Changes
! History</a> - <a href="download.html">Download</a> - <a href="support.html">Support</a>
- <a href="resources.html">Resources</a></font></p>
<font size="1">$Revision$ $Date$</font> </div>
Index: components.html
===================================================================
RCS file: /cvsroot/dbunit/dbunit/docs/components.html,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** components.html 16 Jun 2002 19:21:09 -0000 1.16
--- components.html 11 Dec 2002 15:52:47 -0000 1.17
***************
*** 1,3 ****
!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- #BeginTemplate "/Templates/main.dwt" -->
--- 1,3 ----
!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- #BeginTemplate "/Templates/main.dwt" -->
***************
*** 5,15 ****
<meta http-equiv="Content-Style-Type" content="text/css">
<link href="stylesheet.css" rel="stylesheet" type="text/css">
! <!-- #BeginEditable "doctitle" -->
<title>The Dbunit Framework - Framework Components</title>
! <!-- #EndEditable -->
</head>
<body>
<table cellspadding = 0 cellspacing = 0 border = 0 width="100%">
! <tr height="100">
<td class="logo" width = 200><img src="images/logo.jpg" width=200 height=100></td>
<td class="header"></td>
--- 5,15 ----
<meta http-equiv="Content-Style-Type" content="text/css">
<link href="stylesheet.css" rel="stylesheet" type="text/css">
! <!-- #BeginEditable "doctitle" -->
<title>The Dbunit Framework - Framework Components</title>
! <!-- #EndEditable -->
</head>
<body>
<table cellspadding = 0 cellspacing = 0 border = 0 width="100%">
! <tr height="100">
<td class="logo" width = 200><img src="images/logo.jpg" width=200 height=100></td>
<td class="header"></td>
***************
*** 17,24 ****
</table>
<table cellspadding = 0 cellspacing = 0 border = 0>
! <tr>
!
! <td class="menu" nowrap valign="top" >
! <p><a href="index.html">Home</a><br>
<br>
<a href="intro.html">Introduction</a><br>
--- 17,24 ----
</table>
<table cellspadding = 0 cellspacing = 0 border = 0>
! <tr>
!
! <td class="menu" nowrap valign="top" >
! <p><a href="index.html">Home</a><br>
<br>
<a href="intro.html">Introduction</a><br>
***************
*** 37,49 ****
<br>
</p>
! <div align="center"><a href="http://sourceforge.net"> <img alt="SourceForge Logo" border="0" height="31" width="88" src="http://sourceforge.net/sflogo.php?group_id=47439">
</a></div>
<br>
! <div align="center"><a href="http://www.silphid.com/"><img alt="Silphid Creations"
src="images/silphid.gif" border=0></a></div>
</td>
! <td class="body" valign="top"> <!-- #BeginEditable "body" -->
<h2>Core Classes</h2>
! The following walks you through the core classes that make up DbUnit:
<ul>
<li><a href="#dataset">IDataSet (org.dbunit.dataset)</a></li>
--- 37,49 ----
<br>
</p>
! <div align="center"><a href="http://sourceforge.net"> <img alt="SourceForge Logo" border="0" height="31" width="88" src="http://sourceforge.net/sflogo.php?group_id=47439">
</a></div>
<br>
! <div align="center"><a href="http://www.silphid.com/"><img alt="Silphid Creations"
src="images/silphid.gif" border=0></a></div>
</td>
! <td class="body" valign="top"> <!-- #BeginEditable "body" -->
<h2>Core Classes</h2>
! The following walks you through the core classes that make up DbUnit:
<ul>
<li><a href="#dataset">IDataSet (org.dbunit.dataset)</a></li>
***************
*** 51,62 ****
<li><a href="#databaseoperation">DatabaseOperation (org.dbunit.operation)</a></li>
</ul>
! <p>All the above are interfaces or abstract classes and you will find yourself
using implementations or subclasses.</p>
<hr>
<h3><a name="dataset">IDataSet</a></h3>
! <p>The <a class="code">IDataSet</a> interface represents is a collection
! of data from various tables. As explained later, these data is used to
execute setup operations on a target database. </p>
! <p>The <a class="code">IDataSet</a> implementations provided by the framework
are: </p>
<ul>
--- 51,62 ----
<li><a href="#databaseoperation">DatabaseOperation (org.dbunit.operation)</a></li>
</ul>
! <p>All the above are interfaces or abstract classes and you will find yourself
using implementations or subclasses.</p>
<hr>
<h3><a name="dataset">IDataSet</a></h3>
! <p>The <a class="code">IDataSet</a> interface represents is a collection
! of data from various tables. As explained later, these data is used to
execute setup operations on a target database. </p>
! <p>The <a class="code">IDataSet</a> implementations provided by the framework
are: </p>
<ul>
***************
*** 68,73 ****
<li><a href="#FilteredDataSet">FilteredDataSet</a></li>
<li><a href="#CaseInsentiveDataSet" >CaseInsentiveDataSet</a></li>
</ul>
! The <a class="code">IDataSet</a> interface:
<pre>public interface IDataSet
{
--- 68,74 ----
<li><a href="#FilteredDataSet">FilteredDataSet</a></li>
<li><a href="#CaseInsentiveDataSet" >CaseInsentiveDataSet</a></li>
+ <li><a href="#QueryDataSet" >QueryDataSet</a></li>
</ul>
! The <a class="code">IDataSet</a> interface:
<pre>public interface IDataSet
{
***************
*** 88,96 ****
public ITable getTable(String tableName) throws DataSetException;
}</pre>
! <a name="XmlDataSet">
<h4>XmlDataSet </h4>
! </a>
! <p>The <a class="code">XmlDataSet</a> class provides the persistence support
! to read from and write to the generic xml dataset format. This format
is very generic and must conform to a predefined DTD.</p>
<p>The generic xml dataset DTD:<br>
--- 89,97 ----
public ITable getTable(String tableName) throws DataSetException;
}</pre>
! <a name="XmlDataSet">
<h4>XmlDataSet </h4>
! </a>
! <p>The <a class="code">XmlDataSet</a> class provides the persistence support
! to read from and write to the generic xml dataset format. This format
is very generic and must conform to a predefined DTD.</p>
<p>The generic xml dataset DTD:<br>
***************
*** 150,163 ****
</dataset></pre>
<h4><a name="FlatXmlDataSet">FlatXmlDataSet</a></h4>
! <p>The <a class="code">FlatXmlDataSet</a> class has been introduced in version
! 1.2 because I found that generic xml datasets were hard to create and
! to maintain. This was particularly painful for tables with several columns.
</p>
! <p>In the flat xml format, each xml element corresponds to a table row.
! Each element name corresponds to its table name. The columns correspond
! to attributes. This format has no predefined DTD since it is different
! for each database. DbUnit can generate a DTD for your database (see the
<a href="howto.html#generatedtd">How-to guide</a>). </p>
! <p> Here is a sample dataset containing the same data than the <a href="#originalxmlsample">XmlDataSet
sample</a>:<br>
</p>
--- 151,164 ----
</dataset></pre>
<h4><a name="FlatXmlDataSet">FlatXmlDataSet</a></h4>
! <p>The <a class="code">FlatXmlDataSet</a> class has been introduced in version
! 1.2 because I found that generic xml datasets were hard to create and
! to maintain. This was particularly painful for tables with several columns.
</p>
! <p>In the flat xml format, each xml element corresponds to a table row.
! Each element name corresponds to its table name. The columns correspond
! to attributes. This format has no predefined DTD since it is different
! for each database. DbUnit can generate a DTD for your database (see the
<a href="howto.html#generatedtd">How-to guide</a>). </p>
! <p> Here is a sample dataset containing the same data than the <a href="#originalxmlsample">XmlDataSet
sample</a>:<br>
</p>
***************
*** 165,169 ****
<!DOCTYPE dataset SYSTEM "my-dataset.dtd">
<dataset>
! <TEST_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1"
COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<TEST_TABLE COLUMN0="row 1 col 0" COLUMN3="row 1 col 3"/>
--- 166,170 ----
<!DOCTYPE dataset SYSTEM "my-dataset.dtd">
<dataset>
! <TEST_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1"
COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<TEST_TABLE COLUMN0="row 1 col 0" COLUMN3="row 1 col 3"/>
***************
*** 173,217 ****
</dataset></pre>
<h5>Null Values</h5>
! To specify a null value, you simply have to omit its corresponding attribute.
! In the above example, COLUMN1 and COLUMN2 are nulls for the second row of
! TEST_TABLE.
<h5>Table metadata</h5>
! DbUnit generate table metadata from the DTD pointed by the document type
! declaration. DbUnit only support external system URI. The URI can be absolute
! or relative.
! <p> Example of system document type declaration:
<pre><!DOCTYPE dataset SYSTEM "my-dataset.dtd"></pre>
! <p>If the xml document does not contain a document type declaration, the
! metadata is generated from the first row of each table. This is highly
! recommended to always provide a document type declaration since DbUnit
! will think your table is missing some columns if the first row has one
! or more null values.
<h4><a name="DatabaseDataSet">DatabaseDataSet</a></h4>
! The <a class=code>DatabaseDataSet</a> is an adapter class that allows access
! to a database contents as a dataset. This class is not usually instantiated
directly but from the factory method <a class="code">IDatabaseConnection.createDataSet()</a>.<br>
<h4><a name="DefaultDataSet">DefaultDataSet</a></h4>
! The <a class=code>DefaultDataSet</a> class can be used to create datasets
programmatically. <br>
<h4><a name="CompositeDataSet">CompositeDataSet</a></h4>
! The <a class=code>CompositeDataSet</a> class combines multiple datasets
into a single one at runtime.<br>
<h4><a name="FilteredDataSet">FilteredDataSet</a></h4>
! The <a class="code">FileteredDataSet</a> class is is a decorator which exposes
only some tables from the decorated dataset. <br>
<h4><a name="CaseInsentiveDataSet">CaseInsentiveDataSet</a></h4>
! The <a class="code">CaseInsentiveDataSet</a> class is a decorator that allows
! access to a decorated dataset in a case insensitive way. Dataset implementations
! provided by the framework are case sensitive. This class allows using them
in situation where case sensitiveness is not desirable. <br>
<hr>
<h3><a name="databaseconnection">IDatabaseConnection</a></h3>
! <p>As its name implies, the <a class="code">IDatabaseConnection</a> represent
a connection to a database. </p>
<p>The DbUnit framework provides two implementations: </p>
<ul>
! <li><a class="code">DatabaseConnection</a>, which is a JDBC Connection
adapter.</li>
! <li><a class="code">DatabaseDataSourceConnection</a>, which is a JDBC
DataSource adapter.<br>
</li>
--- 174,222 ----
</dataset></pre>
<h5>Null Values</h5>
! To specify a null value, you simply have to omit its corresponding attribute.
! In the above example, COLUMN1 and COLUMN2 are nulls for the second row of
! TEST_TABLE.
<h5>Table metadata</h5>
! DbUnit generate table metadata from the DTD pointed by the document type
! declaration. DbUnit only support external system URI. The URI can be absolute
! or relative.
! <p> Example of system document type declaration:
<pre><!DOCTYPE dataset SYSTEM "my-dataset.dtd"></pre>
! <p>If the xml document does not contain a document type declaration, the
! metadata is generated from the first row of each table. This is highly
! recommended to always provide a document type declaration since DbUnit
! will think your table is missing some columns if the first row has one
! or more null values.
<h4><a name="DatabaseDataSet">DatabaseDataSet</a></h4>
! The <a class=code>DatabaseDataSet</a> is an adapter class that allows access
! to a database contents as a dataset. This class is not usually instantiated
directly but from the factory method <a class="code">IDatabaseConnection.createDataSet()</a>.<br>
<h4><a name="DefaultDataSet">DefaultDataSet</a></h4>
! The <a class=code>DefaultDataSet</a> class can be used to create datasets
programmatically. <br>
<h4><a name="CompositeDataSet">CompositeDataSet</a></h4>
! The <a class=code>CompositeDataSet</a> class combines multiple datasets
into a single one at runtime.<br>
<h4><a name="FilteredDataSet">FilteredDataSet</a></h4>
! The <a class="code">FileteredDataSet</a> class is is a decorator which exposes
only some tables from the decorated dataset. <br>
<h4><a name="CaseInsentiveDataSet">CaseInsentiveDataSet</a></h4>
! The <a class="code">CaseInsentiveDataSet</a> class is a decorator that allows
! access to a decorated dataset in a case insensitive way. Dataset implementations
! provided by the framework are case sensitive. This class allows using them
in situation where case sensitiveness is not desirable. <br>
+ <h4><a name="QueryDataSet">QueryDataSet</a></h4>
+ The <a class="code">QueryDataSet</a> class is a dataset that allows you to
+ add tables, and the sql to extract the data to populate the table. It is
+ currently only used by the Ant query step and export step.<br>
<hr>
<h3><a name="databaseconnection">IDatabaseConnection</a></h3>
! <p>As its name implies, the <a class="code">IDatabaseConnection</a> represent
a connection to a database. </p>
<p>The DbUnit framework provides two implementations: </p>
<ul>
! <li><a class="code">DatabaseConnection</a>, which is a JDBC Connection
adapter.</li>
! <li><a class="code">DatabaseDataSourceConnection</a>, which is a JDBC
DataSource adapter.<br>
</li>
***************
*** 219,224 ****
<hr>
<h3><a name="databaseoperation">DatabaseOperation</a></h3>
! <p>The <a class="code">DatabaseOperation</a> abstract class defines operations
! performed on a target database before and after each test. Again, the
framework provides several implementations. <br>
</p>
--- 224,229 ----
<hr>
<h3><a name="databaseoperation">DatabaseOperation</a></h3>
! <p>The <a class="code">DatabaseOperation</a> abstract class defines operations
! performed on a target database before and after each test. Again, the
framework provides several implementations. <br>
</p>
***************
*** 235,241 ****
<li><a href="#IdentityInsertOperation">IdentityInsertOperation</a> </li>
</ul>
! <p>The two most usefull operations are <a href="#refresh">REFRESH</a> and
! <a href="#cleanInsert">CLEAN_INSERT</a>. As you will shortly see, they
! are the ones you will deal with most of the time. They represent two opposite
testing strategies with different benefits and tradeoffs. </p>
<p>The <a class="code">DatabaseOperation</a> class declaration: </p>
--- 240,246 ----
<li><a href="#IdentityInsertOperation">IdentityInsertOperation</a> </li>
</ul>
! <p>The two most usefull operations are <a href="#refresh">REFRESH</a> and
! <a href="#cleanInsert">CLEAN_INSERT</a>. As you will shortly see, they
! are the ones you will deal with most of the time. They represent two opposite
testing strategies with different benefits and tradeoffs. </p>
<p>The <a class="code">DatabaseOperation</a> class declaration: </p>
***************
*** 248,254 ****
public static final IDatabaseOperation REFRESH = new RefreshOperation();
public static final IDatabaseOperation DELETE = new DeleteOperation();
! public static final IDatabaseOperation DELETE_ALL =
new DeleteAllOperation();
! public static final IDatabaseOperation CLEAN_INSERT =
new CompositeOperation(DELETE_ALL, INSERT);
--- 253,259 ----
public static final IDatabaseOperation REFRESH = new RefreshOperation();
public static final IDatabaseOperation DELETE = new DeleteOperation();
! public static final IDatabaseOperation DELETE_ALL =
new DeleteAllOperation();
! public static final IDatabaseOperation CLEAN_INSERT =
new CompositeOperation(DELETE_ALL, INSERT);
***************
*** 260,264 ****
private static class DummyAction extends DatabaseOperation
{
! public void execute(IDatabaseConnection connection,
IDataSet dataSet)
{
--- 265,269 ----
private static class DummyAction extends DatabaseOperation
{
! public void execute(IDatabaseConnection connection,
IDataSet dataSet)
{
***************
*** 267,305 ****
}</pre>
<h4><a name="update">DatabaseOperation</a>.UPDATE</h4>
! This operation updates the database from the dataset contents. This operation
! assumes that table data already exists in the target database and fails
if this is not the case.<br>
<br>
<h4><a name="insert">DatabaseOperation.INSERT</a></h4>
! This operation inserts the dataset contents into the database. This operation
! assumes that table data does not exist in the target database and fails
! if this is not the case. To prevent problems with foreign keys, tables must
be sequenced appropriately in the dataset. <br>
<h4><a name="delete">DatabaseOperation.DELETE</a></h4>
! This operation deletes only the dataset contents from the database. This
! operation does not delete the entire table contents but only data that are
present in the dataset. <br>
<h4><a name="deleteall">DatabaseOperation.DELETE_ALL</a></h4>
! This operation deletes entire target database table contents for each table
! contained in dataset. In other words, if a dataset does not contain a particular
! table, but that table exists in the database, the contents of that table
is not deleted. Deletes are performed on table in reverse sequence.<br>
<h4><a name="refresh">DatabaseOperation.REFRESH</a></h4>
! This operation literally refreshes dataset contents into the target database.
! This means that data of existing rows are updated and non-existing row get
! inserted. Any rows which exist in the database but not in dataset stay unaffected.
! This approach is more appropriate for tests that assume other data may exist
in the database. <br>
<br>
! As you understand, this is a very powerful operation. This strategy can
! help you deal more easily with foreign key constraints, as you don't necessarily
need to insert data in a specific sequence. <br>
<br>
! If they are correctly written, tests using this strategy can even be performed
on a populated database like a copy of a production database. <br>
<h4><a name="cleaninsert">DatabaseOperation.CLEAN_INSERT</a></h4>
! This composite operation performs a DELETE_ALL operation followed by an
! INSERT operation. This is the safest approach to ensure that the database
! is in a known state. This is appropriate for tests that require the database
to only contain a specific set of data.<br>
<h4><a name="none">DatabaseOperation.NONE</a></h4>
--- 272,310 ----
}</pre>
<h4><a name="update">DatabaseOperation</a>.UPDATE</h4>
! This operation updates the database from the dataset contents. This operation
! assumes that table data already exists in the target database and fails
if this is not the case.<br>
<br>
<h4><a name="insert">DatabaseOperation.INSERT</a></h4>
! This operation inserts the dataset contents into the database. This operation
! assumes that table data does not exist in the target database and fails
! if this is not the case. To prevent problems with foreign keys, tables must
be sequenced appropriately in the dataset. <br>
<h4><a name="delete">DatabaseOperation.DELETE</a></h4>
! This operation deletes only the dataset contents from the database. This
! operation does not delete the entire table contents but only data that are
present in the dataset. <br>
<h4><a name="deleteall">DatabaseOperation.DELETE_ALL</a></h4>
! This operation deletes entire target database table contents for each table
! contained in dataset. In other words, if a dataset does not contain a particular
! table, but that table exists in the database, the contents of that table
is not deleted. Deletes are performed on table in reverse sequence.<br>
<h4><a name="refresh">DatabaseOperation.REFRESH</a></h4>
! This operation literally refreshes dataset contents into the target database.
! This means that data of existing rows are updated and non-existing row get
! inserted. Any rows which exist in the database but not in dataset stay unaffected.
! This approach is more appropriate for tests that assume other data may exist
in the database. <br>
<br>
! As you understand, this is a very powerful operation. This strategy can
! help you deal more easily with foreign key constraints, as you don't necessarily
need to insert data in a specific sequence. <br>
<br>
! If they are correctly written, tests using this strategy can even be performed
on a populated database like a copy of a production database. <br>
<h4><a name="cleaninsert">DatabaseOperation.CLEAN_INSERT</a></h4>
! This composite operation performs a DELETE_ALL operation followed by an
! INSERT operation. This is the safest approach to ensure that the database
! is in a known state. This is appropriate for tests that require the database
to only contain a specific set of data.<br>
<h4><a name="none">DatabaseOperation.NONE</a></h4>
***************
*** 308,326 ****
This operation combines multiple operations into a single one.<br>
<h4><a name="TransactionOperation">TransactionOperation</a></h4>
! <p>This operation decorates an operation and executes it within the context
of a transaction.</p>
<h4><a name="IdentityInsertOperation">IdentityInsertOperation<a ></a></a></h4>
! <p>This operation decorates an operation and disables the MS SQL Server
automatic identifier generation (IDENTITY) during its execution.</p>
! <!-- #EndEditable -->
<hr>
! <div align="center">
<p><font size="2">Copyright ©2002, Manuel Laflamme, All Rights Reserved</font></p>
! <p><font size="1"><a href="index.html">Home</a> - <a href="intro.html">Introduction</a>
! - <a href="components.html">Core Classes</a> - <a href="anttask.html">Ant
! Task</a> - <a href="howto.html">How-to Guides</a> - <a href="bestpractices.html">Best
! Practices</a> - <a href="properties.html">Properties</a> - <a href="api/index.html">API
! Reference</a> - <a href="faq.html">FAQ</a> - <a href="changes.html">Changes
! History</a> - <a href="download.html">Download</a> - <a href="support.html">Support</a>
- <a href="resources.html">Resources</a></font></p>
<font size="1">$Revision$ $Date$</font> </div>
--- 313,331 ----
This operation combines multiple operations into a single one.<br>
<h4><a name="TransactionOperation">TransactionOperation</a></h4>
! <p>This operation decorates an operation and executes it within the context
of a transaction.</p>
<h4><a name="IdentityInsertOperation">IdentityInsertOperation<a ></a></a></h4>
! <p>This operation decorates an operation and disables the MS SQL Server
automatic identifier generation (IDENTITY) during its execution.</p>
! <!-- #EndEditable -->
<hr>
! <div align="center">
<p><font size="2">Copyright ©2002, Manuel Laflamme, All Rights Reserved</font></p>
! <p><font size="1"><a href="index.html">Home</a> - <a href="intro.html">Introduction</a>
! - <a href="components.html">Core Classes</a> - <a href="anttask.html">Ant
! Task</a> - <a href="howto.html">How-to Guides</a> - <a href="bestpractices.html">Best
! Practices</a> - <a href="properties.html">Properties</a> - <a href="api/index.html">API
! Reference</a> - <a href="faq.html">FAQ</a> - <a href="changes.html">Changes
! History</a> - <a href="download.html">Download</a> - <a href="support.html">Support</a>
- <a href="resources.html">Resources</a></font></p>
<font size="1">$Revision$ $Date$</font> </div>
Index: faq.html
===================================================================
RCS file: /cvsroot/dbunit/dbunit/docs/faq.html,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** faq.html 17 Jul 2002 01:55:21 -0000 1.18
--- faq.html 11 Dec 2002 15:52:48 -0000 1.19
***************
*** 1,3 ****
!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- #BeginTemplate "/Templates/main.dwt" -->
--- 1,3 ----
!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- #BeginTemplate "/Templates/main.dwt" -->
***************
*** 5,15 ****
<meta http-equiv="Content-Style-Type" content="text/css">
<link href="stylesheet.css" rel="stylesheet" type="text/css">
! <!-- #BeginEditable "doctitle" -->
<title>The Dbunit Framework - FAQ</title>
! <!-- #EndEditable -->
</head>
<body>
<table cellspadding = 0 cellspacing = 0 border = 0 width="100%">
! <tr height="100">
<td class="logo" width = 200><img src="images/logo.jpg" width=200 height=100></td>
<td class="header"></td>
--- 5,15 ----
<meta http-equiv="Content-Style-Type" content="text/css">
<link href="stylesheet.css" rel="stylesheet" type="text/css">
! <!-- #BeginEditable "doctitle" -->
<title>The Dbunit Framework - FAQ</title>
! <!-- #EndEditable -->
</head>
<body>
<table cellspadding = 0 cellspacing = 0 border = 0 width="100%">
! <tr height="100">
<td class="logo" width = 200><img src="images/logo.jpg" width=200 height=100></td>
<td class="header"></td>
***************
*** 17,24 ****
</table>
<table cellspadding = 0 cellspacing = 0 border = 0>
! <tr>
!
! <td class="menu" nowrap valign="top" >
! <p><a href="index.html">Home</a><br>
<br>
<a href="intro.html">Introduction</a><br>
--- 17,24 ----
</table>
<table cellspadding = 0 cellspacing = 0 border = 0>
! <tr>
!
! <td class="menu" nowrap valign="top" >
! <p><a href="index.html">Home</a><br>
<br>
<a href="intro.html">Introduction</a><br>
***************
*** 37,100 ****
<br>
</p>
! <div align="center"><a href="http://sourceforge.net"> <img alt="SourceForge Logo" border="0" height="31" width="88" src="http://sourceforge.net/sflogo.php?group_id=47439">
</a></div>
<br>
! <div align="center"><a href="http://www.silphid.com/"><img alt="Silphid Creations"
src="images/silphid.gif" border=0></a></div>
</td>
! <td class="body" valign="top"> <!-- #BeginEditable "body" -->
<h2><a name="faq">Frequently asked questions</a></h2>
<ul>
<li><a href="#supportedvendors">Which database system are supported?</a></li>
! <li><a href="#identity">Can I use DbUnit with IDENTITY or auto-increment
columns?</a></li>
! <li><a href="#clonedconnection">Why I get a "Can't start a cloned
connection" exception when I use InsertIdentityOperation?</a></li>
! <li><a><a href="UnsatisfiedLinkError">Why I get an "UnsatisfiedLinkError"
with the DB2 driver?</a></a></li>
! <li><a href="#AmbiguousTableNameException">Why I get a AmbiguousTableNameException?</a></li>
</ul>
<hr>
<h3><a name="supportedvendors">Which database systems are supported?</a></h3>
! <p>The Dbunit framework has been developed and tested with Oracle and HypersonicSQL.
! It uses a fairly simple SQL syntax and should be compatible with the other
! database systems. <a href="support.html">Let us know</a> if you find any
incompat...
[truncated message content] |