Introduction

I have worked with databases of many types on many platforms. Despite the fact that almost all of them have been based on the relational model. I’ve had some excursions into ancient database structures such as IMS (a hierarchical database) and, more recently into unstructured data, but in every case it has been a matter of a basic principle: finding the simplest way to organize data so that it makes sense. (As I often say to clients, “The data doesn’t lie.” When you lay data out this way, that way, and every which way, I’ve found that gradually its inherent structure becomes clear – if there is one. If there isn’t an inherent structure, what may become clear is some structure no one has ever thought of for the data. And sometimes, the data stubbornly refuses to reveal a structure that we can understand.

This may sound very highfalutin and esoteric, but I do think that our job as database designers ultimately becomes a job of finding patterns. If we cannot find a logically inherent and inevitable pattern, the best choice is to find the best pattern that is usable for the task at hand.

We can’t produce these data models without knowing something (a lot, in fact) about the ways to organize data, and, today that comes down to the relational model and the tools of SQL. This process is iterative (woe betide the design team that adopts a partial database model too early), and it relies on flexible tools as well as imagination and constant questioning of everyone working on a project.

SQLite has become a critical component of many data modeling projects because it is so lightweight and flexible. You can put up a SQLite database with basic functionality very quickly. That’s where this book comes in. If you have the data and the mission to come up with something that uses the data – website, mobile app, or standalone software product – SQLite can be just what you want.

SQLite runs on many operating systems. With SQLite, you’re working with a database that you can move around from one platform to another and one development environment to another. Your prototyping, experimentation, and development can proceed without committing yourself to anything besides the relational model and SQLite. You may move on to other relational tools, and your little SQLite app may turn into a production app for a multitude of devices or for a single many-multi-threaded corporate data center.

This flexibility and very low barrier to entry are two of the features that many people including me find attractive in SQLite.

I hope that you’ll find this book useful. There’s more information on SQLite at sqlite.org, and there’s more information (and downloadable examples from the book) on my website at northcountryconsulting.com.

—Jesse Feiler

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.17.162.214