8Designing Databases to Support Software

The previous chapters showed you how to gather user requirements, build a database model, and normalize the database to improve its performance and robustness. You learned how to look at the database from your customers' perspective, from the end-users' perspective, and from a database normalization perspective. But there's one other viewpoint that you should consider before you open your database product and start slapping tables together: the programmer's.

You might not be responsible for writing a program to work with a database. The database might not ever directly interact with a program (although that's rare). In any case, the techniques for making a database easier for a program to use often apply to other situations. Learning how to help a database support software applications can make the database easier to use in general.

In this chapter, you learn:

  • Steps that you can take to make the database more efficient in practical use
  • Methods for making validation easier in the user interface
  • Ways to easily manage nonsearchable data

This chapter describes several things that you can do to make the database more program-friendly.

A few of these ideas (such as multi-tier architecture) have been covered in earlier chapters. They are repeated in brief here to tie them together with other programming-related topics, but you should refer to the original chapters for more detailed information.

PLAN AHEAD

Any complicated task benefits ...

Get Beginning Database Design Solutions, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.