Design Considerations

The process of deciding what the database will look like is called database design. Designing a database involves choosing

  • The tables that belong in the database

  • The columns that belong in each table

  • How tables and columns interact with each other

Database design is concerned with the logical structure of the database. In the relational model, decisions about logical design are completely independent of the database's physical storage and structure. The logical structure is also independent of what the end user eventually sees. That can be customized with views created by the designer (see Chapter 9 for details) or with front-end application programs.

Database design using the relational model offers some important advantages over the design process used in other database models:

  • The independence of the logical design from both the physical design and the end user's view

  • The flexibility of the database design—design decisions don't limit the questions you can ask about the data in the future

Because the relational model does not require you to define access paths among your data, you can query about any kind of logical relationship the database contains, not just the relationships for which you originally planned. (In this chapter, we assume that “you” are the database designer.)

On the other hand, relational systems have no built-in protections against poor design decisions, no automatic way to distinguish a good design from a bad one. There is simply no set of automated tools that can substitute for your understanding of relational design principles and procedures.

Database design, like some of the other issues touched on in this book, is a very large subject. Professional careers have been devoted to it, and hundreds of articles and dozens of books have been written about it—some of them extremely technical and bristling with jargon and abstract terminology, others aimed at casual users of personal computers. (The ones we've found most helpful are listed in Appendix E.)

While the discussion in this chapter is brief, and decidedly practical rather than theoretical, it is meant to give you enough understanding to design a moderately complex database. It will acquaint you with the jargon and the issues so that you'll be able to tackle more technical discussions of database design if you need to do so. The basic principles are the same whether the database you're designing is simple or complex.

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

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