PlaneDisaster.NET is a SQL Frontend for JetSQL (MS Access) and SQLite.NET databases. It is written in C# and available on


Origins and History

I wrote a database viewer due to the fact that I needed a way to browse Microsoft Access files. I was working in C# at the time so that was the language I chose. I wanted to make this an open source project in the hopes of benifiting others.

My project quickly grew to support several databases. I created a nice hierarchy of classes that wrapped around ADO.NET Provider classes. However, I then realized that I wasn't filling a need with the MySQL and Postgres frontend. I prefer the existing frontends for Postgresql, MySQL and Microsoft SQL server. As a result, I dropped support for all databases besides MS access and SQLite. While there are other front ends for SQLite available, I prefer PlaneDisaster to them so I kept support for it. Also, SQLite and MS Access database are used in similar manners and in both cases the database is just a file and the database engine is just a shared library.

The Name PlaneDisaster.NET

The prototype of PlaneDisaster.NET was a VB6 application called PlaneCrash. The plane part of the name refers to the name of the MS Access database engine JetSQL. The words Crash and Disaster refer to my dislike of the JetSQL engine for its lack of scalability and features. I might change the name if I can think of a better one.


You can retrieve the DDL of a database object. All objects besides tables in JetSQL are supported. JetSQL has no mechanism for giving you a "CREATE TABLE" statement that will exactly duplicate a tables schema. There is much code that attempts to create the DDL by examing the schema of the table. This feature would be good to implement. I will gladly accept contributions in this regard.
The JetSQL Engine has a method of repairing corrupted databases. I don't know how well it works, but I expose that functionality here. This is the same repair database functionality available from Microsoft Access.

Screen Shots

View PlaneDisaster in action

Getting PlaneDisaster.NET

PlaneDisaster.NET has a project page on sourceforge. I make periodic releases.


The first "official release" was 0.9. This is the current release. Previous to that releases were labeles PlaneDisaster.NET-YYYYMMDDHHMMSS-alpha. I felt it was time to release more formal versions.

Its quite stable and haven't broken any databases yet. I use the latest SVN version on my production databases. All that being said, backing up your database involves making a copy of one file, so you have no excuses not to.

Future release plans are outlined below.


The sourceforge page is Feel free to create a source forge account and use the feedback mechanisms provided.

The project is browseable on YOu may search for the project directly via its Project Page or search for search the PlaneDisaster.NET source code below:

Feature Requests

Make a feature request on Source Forge

Feature requests fall into three categories.

  1. Features I will eventually implement
  2. Features that I'm not quite sure how to implement. Contributions are quite welcome here.
  3. Features users have requested.

Current Issues

To report a bug or view current ones please see the SourceForge bug tracker page.

Development Roadmap

The version release is as follows. I recently decided I didn't like the lack of version numbers. I also had not done a release for a while. After some thinking about it I did some coding, got it to a releasable state and declared the release 0.9. The 0.9 series will continue until I release 1.0. I will probably be releasing version 1.0 shortly.

Previous Release (0.9.3)

Current Release (0.9.4)

Upcoming Release (0.9.5)

Beyond 1.0


If you send me a patch I'll look at it. If I like it I'll apply it and submit it to SVN. You will get credit in the source and on this page.