Add Resources      Login      Logout

HSQLDB tips, articles, tricks.

HSQLDB

HSQLDB is a SQL relational database engine written in Java. It has a JDBC driver and supports a rich subset of ANSI-92 SQL (BNF tree format) plus SQL 99 and 2003 enhancements.

It offers a small (less than 100k in one version for applets), fast database engine which offers both in-memory and disk-based tables and supports embedded and server modes. Additionally, it includes tools such as a minimal web server, in-memory query and management tools (can be run as applets) and a number of demonstration examples.

Features Summary

  • 100% Java
  • A full RDBMS (Relational Database Management System), with the Object capabilities of Java
  • Switchable source code to support JDK 1.1.x, 1.2.x, 1.3.x, 1.4.x and above
  • Super fast startup and SELECT, INSERT, DELETE and UPDATE operations
  • Standard SQL (Structured Query Language) syntax
  • Inner and outer joins, SELECT queries as correlations in joins
  • Scalar (single value) SELECTS, correlated subqueries including IN, EXISTS, ANY, ALL
  • Views, Temp tables and sequences
  • Primary key, unique and check constraints on single or multiple columns 
  • Indexes on single or multiple columns
  • ORDER BY, GROUP BY and HAVING
  • COUNT, SUM, MIN, MAX, AVG and statistical aggregate functions (also in expressions and function arguments)
  • Full support for SQL expressions such as CASE .. WHEN .. ELSE .. , NULLIF etc.
  • SQL standard autoincrement column support plus sequences
  • Transaction COMMIT, ROLLBACK and SAVEPOINT support
  • Referential Integrity (foreign keys) with full cascading options (delete, update, set null, set default)
  • Multiple schemata per database
  • Java stored procedures and functions
  • Triggers
  • Database security with passwords, user rights and roles with GRANT and REVOKE
  • Extensive set of ALTER TABLE commands allowing change of column type
  • In-memory tables for fastest operation
  • Disk based tables for large data sets
  • Text tables with external file data sources such as CSV files
  • In-memory (like applets), embedded (into Java applications) and Client-Server operating modes
  • Three client server protocols: HSQL, HTTP and HSQL-BER - can run as an HTTP web server - all with SSL option
  • Can be used in applets, read-only media (CD), inside jars, webstart and embedded applications
  • Multiple databases per JVM
  • Disk tables (CACHED TABLE) up to 8GB and text tables up to 2GB each
  • Size of each string and binary data item only limited by memory
  • Full support for PreparedStatement objects to speed up query processing
  • 95% JDBC interface support with batch statement and scrollable ResultSet functionality
  • All JDBC 1 data types supported, plus 'Object' , Boolean, Blob and Clob
  • Full JDBC 2 DatabaseMetaData and ResultSetMetaData support
  • Database dump as SQL script with or without data
  • Powerful and compact java command line and GUI tools for database management

Latest entries about HSQLDB
  • Hypersonic SQL

    RDBMS with JDBC interface, client-server version, query tool, grid, tree, performance test class, servlet, and self-test program. [Open Source, BSD-like]

All content Copyright© 2004-2006. databasecorner.com . All Rights Reserved.

Reproduction in whole or in part in any form or medium without express written permission is prohibited.

Use of this site, content or service of databasecorner.com constitutes acceptance of our Terms of Use and Privacy Policy

All product names and designated trademarks and brands are the property of their respective owners.

databasecorner.com is not affiliated with or endorsed by any company listed at this site.

Sistemax, LLC
1920 South Main Street, Suite 530
McAllen, TX 78503
USA
(210) 787-3505

Page rendered on:7/5/2008 11:42:27 AM