| <?xml version="1.0" encoding="ISO-8859-15"?>
|
| <!--
|
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| -->
|
| <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
|
| <document>
|
| <header>
|
| <title>HsqlDB</title> |
| </header>
|
| <body>
|
| <p>
|
| DdlUtils supports the <a href="ext:hsqldb">HSQLDB</a> database, version <strong>1.7.2</strong> or newer.
|
| SQL Documentation for HSQLDB can be found in the distribution, and for the newest version
|
| <a href="ext:hsqldb/sql-syntax">here</a>.
|
| </p>
|
| <p> </p> |
| <p> |
| Platform identifier: |
| </p> |
| <ul> |
| <li><code>HsqlDb</code></li> |
| </ul> |
| <p> </p> |
| <p> |
| Recognized JDBC driver: |
| </p> |
| <ul> |
| <li><code>org.hsqldb.jdbcDriver</code></li> |
| </ul> |
| <p> </p> |
| <p> |
| Recognized JDBC sub protocol: |
| </p> |
| <ul> |
| <li><code>jdbc:hsqldb</code></li> |
| </ul> |
| <p> </p>
|
| <table>
|
| <tr> |
| <td class="platformPropName">The database supports SQL comments</td> |
| <td class="platformPropValue">yes</td> |
| </tr> |
| <tr> |
| <td class="platformPropName">The database supports delimited identifiers</td> |
| <td class="platformPropValue">yes</td> |
| </tr> |
| <tr> |
| <td class="platformPropName">The database's maximum identifier length</td> |
| <td class="platformPropValue">unlimited</td> |
| </tr> |
| <tr>
|
| <td class="platformPropName">The database supports default values for <code>LONG</code> types</td>
|
| <td class="platformPropValue">yes</td>
|
| </tr>
|
| <tr> |
| <td class="platformPropName">DdlUtils uses sequences for identity columns</td> |
| <td class="platformPropValue">no</td> |
| </tr> |
| <tr> |
| <td class="platformPropName">The database supports non-primary key columns as identity columns</td> |
| <td class="platformPropValue">no</td> |
| </tr> |
| <tr> |
| <td class="platformPropName">The database allows INSERT/UPDATE statements to set values for identity columns</td> |
| <td class="platformPropValue">yes</td> |
| </tr> |
| <tr> |
| <td class="platformPropName">DdlUtils can read back the auto-generated value of an identity column</td> |
| <td class="platformPropValue">yes</td> |
| </tr> |
| <tr>
|
| <td class="platformPropName">The database supports non-unique indices</td>
|
| <td class="platformPropValue">yes</td>
|
| </tr>
|
| <tr> |
| <td class="platformPropName">DdlUtils can create a database via JDBC</td> |
| <td class="platformPropValue">no</td> |
| </tr> |
| <tr> |
| <td class="platformPropName">DdlUtils can drop a database via JDBC</td> |
| <td class="platformPropValue">no</td> |
| </tr> |
| </table>
|
| <p> </p>
|
| <table>
|
| <tr>
|
| <th class="typeMappingJdbcType">JDBC Type</th>
|
| <th class="typeMappingNativeType">Database Type</th>
|
| <th class="typeMappingComments">Additional comments</th>
|
| </tr>
|
| <tr>
|
| <td>ARRAY</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>BIGINT</td>
|
| <td>BIGINT</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>BINARY</td>
|
| <td>BINARY</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>BIT</td>
|
| <td>BOOLEAN</td>
|
| <td>Will be read back as BOOLEAN</td>
|
| </tr>
|
| <tr>
|
| <td>BLOB</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>BOOLEAN</td>
|
| <td>BOOLEAN</td>
|
| <td>BOOLEAN is supported natively by Hsqldb only since version 1.7.2</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>CHAR</td>
|
| <td>CHAR</td>
|
| <td>The size is optional because per default Hsqldb does not enforce it</td>
|
| </tr>
|
| <tr>
|
| <td>CLOB</td>
|
| <td>LONGVARCHAR</td>
|
| <td>Will be read back as LONGVARCHAR</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>DATALINK</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>DATE</td>
|
| <td>DATE</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>DECIMAL</td>
|
| <td>DECIMAL</td>
|
| <td>Precision and scale are ignored by Hsqldb, as it uses unlimited precision and scale</td>
|
| </tr>
|
| <tr>
|
| <td>DISTINCT</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>DOUBLE</td>
|
| <td>DOUBLE</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>FLOAT</td>
|
| <td>DOUBLE</td>
|
| <td>Will be read back as DOUBLE</td>
|
| </tr>
|
| <tr>
|
| <td>INTEGER</td>
|
| <td>INTEGER</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>JAVA_OBJECT</td>
|
| <td>OBJECT</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>LONGVARBINARY</td>
|
| <td>LONGVARBINARY</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>LONGVARCHAR</td>
|
| <td>LONGVARCHAR</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>NULL</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>NUMERIC</td>
|
| <td>NUMERIC</td>
|
| <td>Precision and scale are ignored by Hsqldb, as it uses unlimited precision and scale</td>
|
| </tr>
|
| <tr>
|
| <td>OTHER</td>
|
| <td>OTHER</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>REAL</td>
|
| <td>REAL</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>REF</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>SMALLINT</td>
|
| <td>SMALLINT</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>STRUCT</td>
|
| <td>LONGVARBINARY</td>
|
| <td>Will be read back as LONGVARBINARY</td>
|
| </tr>
|
| <tr>
|
| <td>TIME</td>
|
| <td>TIME</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>TIMESTAMP</td>
|
| <td>TIMESTAMP</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>TINYINT</td>
|
| <td>SMALLINT</td>
|
| <td>JDBC's TINYINT requires a value range of -255 to 255, but HsqlDb's is only -128 to 127<br/> |
| Will be read back as SMALLINT</td>
|
| </tr>
|
| <tr>
|
| <td>VARBINARY</td>
|
| <td>VARBINARY</td>
|
| <td></td>
|
| </tr>
|
| <tr>
|
| <td>VARCHAR</td>
|
| <td>VARCHAR</td>
|
| <td>The size is optional because per default Hsqldb does not enforce it</td>
|
| </tr>
|
| </table>
|
| </body>
|
| </document>
|