a model-based, database access wrapper for JDBC
Clone or download
gitblit Merge pull request #32 from culmat/patch-3
Avoid NullPointerException
Latest commit 7c0aec7 May 23, 2017



Maven Central Maven Central

iciql is...

  • a model-based, database access wrapper for JDBC
  • for modest database schemas and basic statement generation
  • for those who want to write code, instead of SQL, using IDE completion and compile-time type-safety
  • small (<250KB with debug symbols) with no runtime dependencies
  • pronounced icicle (although it could be French: ici ql - here query language)
  • a friendly fork of the H2 JaQu project

iciql is not...

  • a complete alternative to JDBC
  • designed to compete with more powerful database query tools like jOOQ or QueryDSL
  • designed to compete with enterprise ORM tools like Hibernate or mybatis

Supported Databases (Unit-Tested)

Support for others is possible and may only require creating a simple "dialect" class.


As of 2.0.0 iciql is now distributed through Maven Central and it's coordinates have changed slightly.


Older releases are available from the Iciql Maven Repository.


iciql is distributed under the terms of the Apache Software Foundation license, version 2.0.
The text of the license is included in the file LICENSE in the root of the project.

Java Runtime Requirement

iciql requires a Java 6 Runtime Environment (JRE) or a Java 6 Development Kit (JDK).

Getting help

Read the online documentation available at the iciql website
Issues & source code @ GitHub

Building iciql

You may use Maven to build the project:

mvn clean package

You may use Maven to run the test suite on the default database:

mvn clean test

You may use Maven to run the test suite on all tested databases:

mvn clean test-compile exec:exec