Database Design  «Prev  Next»

Lesson 3 Relational Database Course Resources
Objective Components that make up the Course Resources

Relational Database Course Resources

This course offers a number of resources that will help you understand key concepts such as
  1. Relational Database Management Systems,
  2. primary key,
  3. secondary key,
  4. normalization, and
  5. third normal form.
Additional resources related to relational database design can be found, such as links to helpful Web sites as you now begin to tour this site.

Glossary

Throughout this course, definitions of key terms can be reviewed.
These terms are defined in the Relational Database Design Glossary.
The terms appear as italicized words in the lesson and subsequent web pages that follow. These terms may contain their corresponding definition as footnotes. To search for a specific term, enter the term into the text box located at the top of each page.

Course bookstore

It has been my experience that the students that do the best have made a small investment to obtain Database Design for Mere Mortals: A Hands-On Guide to Relational Database Design, by Michael J. Hernandez.

Ad  Database Design for Mere Mortals

Advantages of using DBMS

The advantages of using a DBMS are
  1. Data independence and efficient access: Database application programs are independent of the details of data representation and storage. The conceptual and external schemas provide independence from physical storage decisions and logical design decisions respectively. In addition, a DBMS provides efficient storage and retrieval mechanisms, including support for very large files, index structures and query optimization.
  2. Reduced application development time: Since the DBMS provides several important functions required by applications, such as concurrency control and crash recovery, high level query facilities, etc., only application-specific code needs to be written. Even this is facilitated by suites of application development tools available from vendors for many database management systems.
  3. Data integrity and security: The view mechanism and the authorization facilities of a DBMS provide a powerful access control mechanism. Further, updates to the data that violate the semantics of the data can be detected and rejected by the DBMS if users specify the appropriate integrity constraints.
  4. Data administration: By providing a common umbrella for a large collection of data that is shared by several users, a DBMS facilitates maintenance and data administration tasks. A good DBA can effectively shield end-users from the chores of fine-tuning the data representation, periodic back-ups etc.
  5. Concurrent access and crash recovery: A DBMS supports the notion of a transaction, which is conceptually a single user's sequential program. Users can write transactions as if their programs were running in isolation against the database. The DBMS executes the actions of transactions in an interleaved fashion to obtain good performance, but schedules them in such a way as to ensure that conflicting operations are not permitted to proceed concurrently. Further, the DBMS maintains a continuous log of the changes to the data, and if there is a system crash, it can restore the database to a transaction-consistent state. That is, the actions of incomplete transactions are undone, so that the database state reflects only the actions of completed transactions. Thus, if each complete transaction, executing alone, maintains the consistency criteria, then the database state after recovery from a crash is consistent.

Exercise Submissions

After completing some exercises, you will be required to type or paste your answer into a text submission box.
Copying and pasting is generally easy to accomplish. The next lesson will discuss the Relational Database Design Learning environment.