BasicQuery LogoBasicQueryMonead Logo
GitHub Project Page | Monead Home
Latest News
The project's source code has been moved to GitHub as of May 24, 2014

Production
The latest release is version 02.00.06 released on July 2, 2014

Reference
Feature List
Presentation
Source Code
JavaDoc

Testing Results
JUnit
Cobertura
 

BasicQuery is a Java-based application used to access databases through JDBC. It features a Swing-based GUI and includes capabilities useful to developers when testing SQL statements against a database. It also produces timing information, which is valuable during tuning exercises. Development on BasicQuery began in early 2003 and it has been used on various projects since then.

Installation

A big Thank You to ej-technologies GmbH for supporting the open source community by providing a license to their install4j multi-platform installer builder. The installers listed below were all created with a single configuration using the install4j installation builder.

You must have Java (JRE) version 5 or higher pre-installed in order to use BasicQuery. You can download the latest Java JRE from Oracle.

The current production release of BasicQuery is Version 02.00.07

PlatformInstallerMD5
MacOS basicquery_macos_02_00_07.dmg basicquery.02-00-07.macos.md5sum.txt
Unix/Linux basicquery_unix_02_00_07.sh basicquery.02-00-07.unix.md5sum.txt
Microsoft Windows (32-bit) basicquery_windows_02_00_07.exe basicquery.02-00-07.mswindows32.md5sum.txt
Microsoft Windows (64-bit) basicquery_windows-x64_02_00_07.exe basicquery.02-00-07.mswindows64.md5sum.txt

Source Code

The latest source code is available at its project home: https://github.com/DaveRead/basicquery.

Description

We have leveraged BasicQuery in diverse situations which involved debugging, testing, and performance tuning. Key features of the application include easy access to each SQL statement entered; ability to save sets of SQL statements in separate files; support for parameterized statements; a provision for multiple return values; execution of sets of statements; storage of each connect URL used; and exporting of results, both data output and timing details, to a CSV file. Given its Java heritage, BasicQuery has been used successfully on multiple platforms.

BasicQuery can use any JDBC-compliant driver. The list of drivers to be loaded is stored in a parameter file. The driver packages themselves are loaded dynamically at startup from a user-configurable location. We regularly access MySQL, Oracle, and Sybase databases. The Apache Jakarta Commons Pool Library can be used, allowing timing tests to reflect the impact of pooled versus non-pooled connections.

On the source code side many changes continue to be made. With the 01.02 production release out, the next set of betas will be focused on the following feature set:
PriorityIn Beta ReleaseFunctionality
HIGHYes01.03.01Allowing multiple SQL statements to be pasted/imported at once
HIGH Storing SQL with embedded CRs (to allow stored proc definitions, etc)
HIGHYes01.03.00Control of Font Family and Font Size
MED User Documentation
MED XML support, bi-directional
MED Reverse-engineering table-create scripts
MEDYes01.03.00Move configuration files to sub-directory of user's home
LOW Add GUI coverage to unit testing
LOW Help System integration
LOW User controlled pooling settings (perhaps using JOCL file?)

We invite other developers to join our project and help advance this tool. Two major areas that need focus are the multi-lingual support and user documentation. The translations would benefit greatly from native speakers editing the terms. An individual interested in creating documentation would be invaluable since we know the operation of the tool too well.

 
Image of BasicQuery's Main Screen
BasicQuery's Main Screen -- Enlarged View