SQL Server 2000 Administration in 15 Minutes a Week: Table Basics (Part 1)
August 22, 2002
Database Design Concepts
this point we have focused on the physical
design of a database which includes things like files and
filegroups. The physical design is focused on how storing data
and the most efficient way to access data.
Now we are going to start to look at implementing
the logical design of a database which
includes objects like tables and the relationships between
them. The logical design is only concerned with modeling a
real-world data scenario -- it is unaware of and non-dependent on any one particular Database Management System. For
example, I could use the same logical design to create a
database in both SQL Server and Access, and I would come up
with the exact same database as far as the logical design
is concerned. However, the physical design for the two
databases could be very different -- the Access database
would be made up of only one file, whereas the SQL Server
database could be made up of many different files spread
across several hard drives.
Another example is a database
on SQL Server that gets another data file added to it.
While the physical design has changed by adding another
file, the logical design is still the same. The important
point to get here is that the physical implementation of a
database and the logical implementation of a database are
two distinct concepts that are, for the most part,
independent of one another.
Another example is a database on SQL Server that gets another data file added to it. While the physical design has changed by adding another file, the logical design is still the same. The important point to get here is that the physical implementation of a database and the logical implementation of a database are two distinct concepts that are, for the most part, independent of one another.
I think I've said this already, but if not, SQL Server is a Relational Database Management System (RDBMS). So it makes sense that the databases that we are going to be working with are relational databases. Although understanding how to design a relational database is an important topic, this series is aimed at SQL Server Administration, the 70-228 exam, and physical design issues -- not the logical design of a relational database (that is covered in the 70-229 exam).
If this is your first time working with a relational database of any kind or if you never got a good grasp on the design concepts, I encourage you to stop here and get a book on designing relational databases. While you could probably complete the rest of this series -- and the 70-228 exam for that matter -- without knowing how to create the logical design for a relational database, you will have an easier time understanding the rest of this series and be a much better admin if you understand the design concepts. Check out the following links to get started learning about logical database design:
If you have worked with other
relational databases (such as Microsoft Access) before and words like normalization and foreign key are not new to
you, read on.