Home | Java |     Share This Page

A Java-based MySQL database management tool

P. Lutus Message Page

Copyright © 2017, P. Lutus

Introduction | Getting JDBClient | Documentation | Version History

(double-click any word to see its definition)

Current Version:  date 

Visitors: See the nearly-identical application that converses with SQLite databases: JSQLiteClient

Figure 1: The JDBClient record editing dialog


This is the most recent in a rather long series of database management tools I've written, but until now none satisfied my wishes — interacting with databases can be tricky. My past projects include DataProspector (Java) and PHP Writer (PHP), and most recently DBCLient, written in Python, which turned out to be a prototype for this project. These were reasonably successful programs, but as time passed I decided they weren't powerful enough. And the Python project might have satisfied me except that it will only run on Linux, something I discovered a bit late.

For this project I set a few goals — I wanted a cross-platform application, I wanted a powerful, easy-to-use query dialog I could use to issue complex queries on a field-by-field basis. I wanted a built-in interactive SQL terminal for complex database tasks that require more than a predefined solution. I also wanted an easy-to-use data editor that I could use for everyday database entries as well as more complex tasks. And I wanted a flexible table display with individually sortable columns.

The good news is that this program exceeds my highest expectations, primarily because the prior Python project taught me what I wanted and what was difficult to achieve.

For more depth about databases and SQL, be sure to visit my MySQL tutorial.
Getting JDBClient

JDBClient is a Java program that runs on nearly any platform.

JDBClient is released under the GPL, it is Copyright © 2017, P. Lutus, and it's free.

JDBClient requires:

  • Access to a MySQL server, either installed on your machine or accessible from there.
  • The most recent Java runtime engine from http://java.com.
  • One of the downloads in the following list.
Here are the downloads and installation details:
  • Linux and other non-Windows platforms: the Java executable JDBClient.jar.

    • Download this file, place it in any convenient location.
    • From the chosen directory, type: "java -jar JDBClient.jar"
    • The above can be made part of a shell script.
  • Windows: the Windows JDBClient installation executable JDBClient.exe.

    • Download and install the above installation package in the usual way.
    • A JDBClient program icon will be placed on your desktop.
  • Project Source: the Netbeans source archive JDBClient_source.tar.bz2

    • JDBClient is Copyright © 2017, P. Lutus, and is released under the GPL.
  • All platforms:

    • Make sure you have the most recent Java runtime engine from java.com.
    • If you try to run JDBClient on an out-of-date Java runtime engine, it will not run. This is the most common error report I get from JDBClient users — caused by an out-of-date Java runtime engine.
    • Make sure you either have your own MySQL server running, or have access to a MySQL server from your network. MySQL is available here.
  • Troubleshooting:

    • I have received a number of error reports from JDBClient users, and all of them result from their trying to run JDBClient on an out-of-date Java runtime engine.
    • Proactively solve this problem by using only the most recent Java runtime engine, available at http://java.com.
    • If you see an error message and/or if JDBClient won't run, consider this possibility first — that your Java runtime engine is out of date.

For use instructions, JDBClient has a comprehensive, built-in help file — read an online copy here. (The online copy is missing some values that are automatically filled in by JDBClient when it runs.)

For general instruction in the use of MySQL, I recommend my online tutorial.

My tutorial contains some MySQL example tables, coded as SQL archives, readable by JDBClient, and linked here:

  • people.sql : an example personal information database, consisting of imaginary people and their imaginary traits, useful for practicing query writing.
  • zipcodes.sql : a database of over 43,000 U.S. zip codes, with states, latitudes and longitudes. It's very useful for query-writing practice, as well as being a generally useful database.

There's no need to download these files, because JDBClient can directly read database tables located on the Web. To have JDBClient read one of these archives, run JDBClient, get logged onto your MySQL server, select the SQL terminal, and type:

  • people.sql: "source http://arachnoid.com/MySQL/resources/people.sql"
  • zipcodes.sql: "source http://arachnoid.com/MySQL/resources/zipcodes.sql"

Hint: avoid typing — copy the commands from this page and paste them into the terminal text control.

My tutorial has some exercises where these tables are used, but using the default MySQL command-line application. The exercises are much easier to carry out using JDBClient.

Version History

JDBClient is Copyright © 2017, P. Lutus, it is released under the GPL, and it is free.

(Reverse chronological order)

  • 11.26.2017 Version 2.7. Fixed a bug that wrongly moved to the edit pane on each query result.
  • 11.19.2017 Version 2.6. Made more changes to this application's behavior and appearance to synchronize it with the SQLite-supporting JSQLiteClient, which has a number of improvements.
  • 11.17.2017 Version 2.5. Updated the user interface and made some improvements based on my work on a similar program (JSQLiteClient) that uses much of the same code, changed the Windows launch procedure after much testing.
  • 11.15.2017 Version 2.3. Updated Windows packaging method, improved interface appearance, fixed some minor bugs. Quoting query arguments is now optional — JDBClient will quote arguments that need them.
  • 11.18.2016 Version 2.2. Changed Windows launch procedure after discovering that Microsoft has abandoned support for Java.
  • 11.02.2015 Version 2.1. Replaced Windows installation package generation method, updated help file.
  • 04.18.2014 Version 2.0. When converting a query result into an HTML page, now create live links for any URLs in the data.
  • 01.15.2013 Version 1.9. Fixed a bug that prevented correct processing of boolean database values.
  • 12.25.2012 Version 1.8. Tuned the HTML formatter.
  • 12.17.2012 Version 1.7. Improved the HTML export option formatting.
  • 11.25.2012 Version 1.6. Fixed a bug in the procedure that creates a new, mostly-blank record.
  • 11.12.2012 Version 1.5. Added an elapsed time field to the system log for query/database development work.
  • 11.11.2012 Version 1.4. Fixed a bug that prevented correct startup in the presence of certain command-line flags.
  • 11.10.2012 Version 1.3. Fixed an ambiguity issue about selecting a record from a table the user has sorted by clicking on column headers.
  • 11.09.2012 Version 1.2. Fixed a word wrap issue in the editing panel.
  • 11.06.2012 Version 1.1. Made a small change to the SQL terminal's URL reading code for greater robustness.
  • 11.02.2012 Version 1.0. Initial public release.

Home | Java |     Share This Page