Database Solutions

Client/Server Database Solutions

We cut our teeth building powerful custom database solutions 20 years ago. We started out creating database solutions using dBase III+ (I have the 3.5" diskettes to prove it). Today we build client/server database management systems using SQL Server, MySQL, MS Access and Visual FoxPro.

I have a real passion for database development. I know, it's strange. I can't believe everyone doesn't love databases!  In all seriousness you are here because your project probably involves a database in one shape or another, and you need an expert database developer. In fact, if your project doesn't require a database, you are probably at the wrong website. That's really all we do.


Our Database Expertise

Database technology is a strange animal. Each tool has its own quirks and unique behaviors. It really does take years of real-world experience before you can call yourself an expert. That's why we focus on a small set of database technologies we know very well. We build client/server Web and Desktop database solutions using the following technologies:

It's not the longest list in the world, but if you need help with one or more of them, we can help you.


What's a Database Solution? 

A database solution is a program (or set of programs) that is database-centric, and helps you store, manage and process information.  So what does it take to create professional database solutions? Let's take a look at the major areas we focus on to create the typical database management system. 


Define Entities

As you might imagine your typical database management system is going to have at least one database. Each database will have one or more entities, called tables. Once we understand your requirements and have created the proper user interface, we are going to need to create these entities. Each entity/table will have one or more fields, each of which will have properties. For example, we'll define if the field is required, if it has to be unique, and if we need to index or sort on it.  All of this information usually goes into a Database Dictionary. Here's a sample Database Dictionary (in Excel) to help you visualize it. You can also download other cool software stuff.


Define Entity Relationships

As database developers, once we've created our tables we need to graphically draw the relationships between them. This helps everyone understand how information in one table relates to information in another. See the image below for a better understanding (I know, pretty ugly).

An ER Diagram tells us a lot about our database system. For the database developer or administrator, this information is crucial.


Define Business Rules

Database management systems operate under a set of clearly defined business rules. These rules are a logical representation of your organization's own business rules. For example, a business rule may define that an Order cannot exist unless it is linked to a customer. Or it may define that each customer must have one and only one customer type. Another example is that a customer balance cannot be negative. Business rules are used to maintain the integrity of the database, making sure that only good data is stored within it. The phrase "garbage in, garbage out" must have been coined by a database developer. 


Build User Interface (UI)

The next step is to map the databases, fields, business rules and other entities of the database to the user interface (UI). Although you may think that each module within the system will relate to one or more tables, in reality the user interface and database structure are totally independent. We design our user interfaces to match your business process. The application's user interface is designed to provide maximum efficiency. The database is designed for speed, integrity and security.  


Create Output (Reports)

When building a database solution, usually (but not always) the last step is to create the reporting, or output portion of the system. Actually, when designing a database system we like to review the current or desired reports/output first. 

There's a lot more to building a professional database management system, but this should give you a good idea of the tasks involved.

  • Call me on my direct line to discuss your database project. It's 1.800.984.6977 Ext. 708.