You are previewing Pro SQL Server 2008 Relational Database Design and Implementation.
O'Reilly logo
Pro SQL Server 2008 Relational Database Design and Implementation

Book Description

Learn effective and scalable database design techniques in a SQL Server environment. Pro SQL Server 2008 Relational Database Design and Implementation covers everything from design logic that business users will understand, all the way to the physical implementation of the design in a SQL Server database. Grounded in best practices and a solid understanding of the underlying theory, authors Louis Davidson, Kevin Kline, Scott Klein, and Kurt Windisch show how to 'get it right' in SQL Server database design and lay a solid groundwork for the future use of valuable business data.

  • Solid foundation in best practices and relational theory

  • Maximize SQL Server features to enhance security, performance, scalability

  • Thorough treatment from conceptual design to an effective, physical implementation

What you'll learn

  • Develop conceptual models of client data using interviews and client documentation

  • Normalize data models to enhance scalability and the long term use of valuable data

  • Translate conceptual models into high-performing SQL Server databases

  • Secure and protect the integrity of data as part of meeting regulatory requirements

  • Take full advantage of new SQL Server features such as the spatial datatype, XML support, transparent data encryption, and more

  • Create effective indexing to speed query performance

Who this book is for

Pro SQL Server 2008 Relational Database Design and Implementation is designed for programmers of all types who want to use SQL Server 2008 to store data. Rookie database programmers will find a complete course on the fundamentals of database design that includes conceptual designs and physical implementation. Seasoned veterans will find many tips and tricks for implementing database systems that will be well worth the time invested in reading this book.

Table of Contents

  1. Title Page
  2. Dedication
  3. Contents at a Glance
  4. Contents
  5. Foreword
  6. About the Author
    1. About the Contributing Authors
  7. About the Technical Reviewers
  8. Acknowledgments
  9. Introduction
    1. Purpose of Database Design
    2. Structure of This Book
  10. CHAPTER 1 Introduction to Database Concepts
    1. Database Design Phases
    2. Relational Data Structures
    3. Relationship Between Entities
    4. Data Access Language (SQL)
    5. Understanding Dependencies
    6. Summary
  11. CHAPTER 2 The Language of Data Modeling
    1. Introduction to Data Modeling
    2. Entities
    3. Attributes
    4. Relationships
    5. Descriptive Information
    6. Alternative Modeling Methodologies
    7. Best Practices
    8. Summary
  12. CHAPTER 3 Conceptual Data Modeling
    1. Understanding the Requirements
    2. Documenting the Process
    3. Requirements Gathering
    4. Identifying Objects and Processes
    5. Identifying Business Rules and Processes
    6. Finishing the Conceptual Model
    7. Best Practices
    8. Summary
  13. CHAPTER 4 The Normalization Process
    1. Why Normalize?
    2. How Far to Normalize?
    3. The Process of Normalization
    4. Entity and Attribute Shape: First Normal Form
    5. Relationships Between Attributes
    6. Multivalued Dependencies in Entities
    7. Denormalization
    8. Best Practices
    9. Summary
    10. Bonus Example
    11. The Story of the Book So Far
  14. CHAPTER 5 Implementing the Base Table Structures
    1. Reviewing the Logical Design
    2. Transforming the Design
    3. Implementing the Design
    4. Best Practices
    5. Summary
  15. CHAPTER 6 Protecting the Integrity of Your Data
    1. Best Practices
    2. Automatic Data Protection
    3. Manual Data Protection
    4. More Best Practices
    5. Summary
  16. CHAPTER 7 Patterns and Query Techniques
    1. Precalculated Values
    2. Binary Large Valued Objects (BLOB)
    3. Storing User-Specified Data
    4. Commonly Implemented Objects
    5. Anti-patterns
    6. Summary
    7. The Continuing Story of the Book So Far
  17. CHAPTER 8 Securing Access to the Data
    1. Principals and Securables
    2. Database Security Overview
    3. Controlling Object Access Via T-SQL Coded Objects
    4. Views and Table-Valued Functions
    5. Obfuscating Data
    6. Monitoring and Auditing
    7. Best Practices
    8. Summary
  18. CHAPTER 9 Table Structures and Indexing
    1. Physical Database Structure
    2. Indexes Overview
    3. Basic Index Structure
    4. Index Types
    5. Basics of Index Creation
    6. Basic Index Usage Patterns
    7. Advanced Index Usage Scenarios
    8. Best Practices
    9. Summary
  19. CHAPTER 10 Coding for Concurrency
    1. What Is Concurrency?
    2. Query Optimization Basics
    3. OS and Hardware Issues
    4. Transactions
    5. SQL Server Concurrency Controls
    6. Coding for Integrity and Concurrency
    7. Best Practices
    8. Summary
  20. CHAPTER 11 Considering Data Access Strategies
    1. Ad Hoc SQL
    2. Stored Procedures
    3. T-SQL and the CLR
    4. Best Practices
    5. Summary
  21. APPENDIX A Codd's 12 Rules for an RDBMS
    1. Rule 1: The Information Rule
    2. Rule 2: Guaranteed Access Rule
    3. Rule 3: Systematic Treatment of NULL Values
    4. Rule 4: Dynamic Online Catalog Based on the Relational Model
    5. Rule 5: Comprehensive Data Sublanguage Rule
    6. Rule 6: View Updating Rule
    7. Rule 7: High-Level Insert, Update, and Delete
    8. Rule 8: Physical Data Independence
    9. Rule 9: Logical Data Independence
    10. Rule 10: Integrity Independence
    11. Rule 11: Distribution Independence
    12. Rule 12: Non-Subversion Rule
    13. Summary
  22. APPENDIX B Scalar Datatype Reference
    1. Precise Numeric Data
    2. Date and Time Data
    3. Character Strings
    4. Binary Data
    5. Other Datatypes
    6. Not Simply Scalar Datatypes
  23. Index