Database Design

Data is no longer an aspect of a product--it IS the product. Data encompasses so many things, dates, measurements, contact information, business identity, profit margins, activity, and historical records just to scratch the surface. We know how to work with data in a myriad of formats, coming from multiple places, and being sent across the internet securely.

hand trying to grab floating digital images
SQL Server logo
SQL Server

SQL Server is a big player in both large and small ways. With SQL Server Express being both free and every bit as capable as it's enterprise version, it's a great system for developing applications of any size. We have a random data generation tool to provide great test beds. We can spin up a new database online quickly using Microsoft Azure cloud services.

Oracle logo

Our involvement with Retail Pro 9 over the last decade has taught us a lot about the nuances of Oracle's database engine, calling stored procedures, and running complex queries to pull out data for integration projects and reports.

Interbase logo

The powerful cross-platform database that comes both as an embedded library for mobile devices and as a back-end server running on Windows or Linux, comes with our development tools and provides a secure storage for sensitive data.

Firebird logo

In 2000, InterBase 6 was made open source. Immediately, there was a code fork by some of the original developers of InterBase who named it Firebird SQL. InterBase is once again proprietary, but Firebird has remained open source. Both products have had many improvements since then and are now two distinct products. (It's interesting to note, however, that a lot of Delphi components and third-party tools still support both.) We have done quite a bit of work with Firebird, including an Apache web module on Linux and a back-end REST server supporting an Android phone app.

My SQL logo

The most ubiquitous database system for web sites is MySQL. We've built several web sites either in PHP using MySQL directly, or PHP-frameworks that use it as part of their underlying database. We've ported tables, built complex queries, synchronized online shopping carts with desktop point-of-sale systems, and migrated whole databases from one server to another. Oh, and we've also connected directly to it from Delphi.

SQLite logo

More recently, as we are developing tablet and phone applications that also need to store data the little ubiquitous database engine, SQLite, can be found everywhere and is a great choice in many cases because it is small and nimble, yet still has many features formerly found only in larger systems. The SQLite libraries are open-source and available on virtually every computing device today; you'd have a difficult time finding a language that doesn't interface with it. With previous experience in a plethora of database languages and tools, getting familiar with this simple yet capable database has proven to be quite painless.

ElevateDB logo

Elevate Software has been supporting Delphi (and now PHP, JavaScript, and .NET as well) with embedded database products for many years. In the late 90's, we wrote an application for a brokerage company to completely manage all aspects of their customer relations, sales, invoicing, and shipping business. It was based on Elevate's DBISAM and was used for many years. When we started another business management application for a steel parts import company in 2005, we again started on DBISAM, but soon moved up to a newer product by the same company, ElevateDB. That application is still in use--and actively maintained--today.

NexusDB logo

The conversion of a major trucking dispatch and accounting software gave us experience with another great embedded database product that has been around for many years, NexusDB. It compiles right in Delphi, provides a secure server back-end and query tool, and ties nicely with grid and reporting features.

Advantage DB logo
Advantage Database

Some legacy applications use the Advantage Database. Although it changed hands a few times and does not appear to be actively supported, there are applications out there that are still running with it just fine. We have the tools and experience to work with this when and where needed.

Yes, we have experience with all of these databases--and more. We are very comfortable dealing with data in both large and small amounts, mixing and matching different systems and manipulating information in whatever fashion is necessary to satisfy the business need. Whether you need an end-to-end data-critical application, or a one time migration to a new system, you can call us to help you out. Here are a few more listed for historical reference.


In the late 1980s, we setup our first database for a cleaning supplies business and started learning how to build forms for simple data entry, provide customized reports, and manage the flow of a business's most valuable asset: information. That database was Paradox (now known as Paradox for DOS), with built-in scripting, form-building tools, tutorials, and easy-to-use reports. This powerful tool was ahead of it's time and became one of the popular database back-ends used with Delphi in the early Windows days. It did well as a desktop database for local applications, but lacked some of the transactional robustness provided by client/server engines.


In the 90's, we did some work for an educational company that had an information management system built in FoxPro for DOS. We helped them port it to FoxPro for Windows and FoxPro for Mac. Later, we also worked on a larger system used in a realtor office. FoxPro is a another good desktop-based database program for getting screens and reports up quickly and organizing local information, and while it still exists, has been superseded by more powerful database engines which have dropped in price or are free.

Other Data Formats

There are other databases we've naturally had experience with including dBASE and Microsoft Access, but not every set of data we deal with comes formatted in rows and columns. The bulk of our experience is integrating disparate systems. Often this involves mapping fields from one table structure to another through a custom application that talks to both ends. Sometimes it involves communicating with a REST-based web service that responds with JSON packets. Other times we read and parse spreadsheets or extrapolate from an XML file. We've dealt with CSV (comma-separated values) files on multiple occasions and have dealt with record-based flat files from old Unix servers. Basically, we can take nearly any formatted data and break it down to process it as meaningful information.

You have data? We can help!