Marc DeLisle1904811302, 9781904811305, 9781847190208
In Detail
For most of us, setting up the database for an application is often an afterthought. While you don’t need to be a professional database designer to create a working application, knowing a few insider tips and techniques can make both the process easier and the end result much more effective. This book doesn’t set out to make you an expert in data analysis, but it does provide a quick and easy way to raise your game in this essential part of getting your application right.
What you will learn from this book? Asking users the right questions to collect relevant data for the system you are building Detecting bad structures Sound data-naming techniques, for both table and column names Modeling data with future growth in mind Implementing security policies with data privileges and views Tuning the structure for performanceProducing system documentation (data dictionary, relational schema) Testing the model with appropriate SQL queries
Approach
This book takes a practical approach, implementing all theoretical concepts with examples. It is a fast-paced tutorial that focuses on critical decisions that you need to make every time you build MySQL databases. It is rich with tips and advice from an experienced practitioner.
Who this book is written for?
Anyone working with applications that use a MySQL database backend will benefit greatly from the advice and techniques in this book. Although a working knowledge of both SQL and MySQL is assumed, the book is suitable for both beginners and intermediate users alike. Whether you read it through and absorb the advice or work through it on a live project, the efficiency and maintainability of your databases will certainly improve as a result.
Table of contents :
Creating your MySQL Database: Practical Design Tips and Techniques……Page 1
Table of Contents……Page 8
Preface……Page 12
MySQL’s Popularity and Impact……Page 16
Data Design Steps……Page 17
But this is my Data!……Page 18
Data Modeling……Page 19
Overview of the Relational Model……Page 20
Simplified Design Technique……Page 21
Our Car Dealer……Page 22
The Tale of the Too Wide Table……Page 23
Summary……Page 27
System Boundaries Identification……Page 28
Modular Development……Page 29
General Reading……Page 30
Interviews……Page 31
Existing Information Systems……Page 32
Data Collected for our Case Study……Page 33
From the Salesperson……Page 34
From the Store Assistant……Page 35
Summary……Page 36
Data Cleaning……Page 38
Subdividing Data Elements……Page 39
Data that are Results……Page 40
Data as a Column’s or Table’s Name……Page 41
Planning for Changes……Page 43
Pitfalls of the Free Fields Technique……Page 44
Abbreviations……Page 45
The Plural Form……Page 46
Table Name into a Column Name……Page 47
Summary……Page 48
Initial List of Tables……Page 50
Primary Keys and Table Names……Page 51
Data Redundancy and Dependency……Page 52
Composite Keys……Page 53
Scalability over Time……Page 55
Empty Columns……Page 56
Avoiding ENUM and SET……Page 57
Validating the Structure……Page 59
Summary……Page 60
Responsibility……Page 62
Views……Page 64
Storage Engines……Page 65
Foreign Key Constraints……Page 66
Indexes……Page 69
Accessing Replication Slave Servers……Page 71
Speed and Data Types……Page 72
In-Column Data Encoding……Page 73
Case Study’s Final Structure……Page 74
Vehicle……Page 76
Person……Page 79
Sale……Page 80
Other tables……Page 83
Summary……Page 85
Results from the Document Gathering Phase……Page 86
Tables and Sample Values……Page 91
Code Tables……Page 92
Themed Tables……Page 93
Composite-Key Tables……Page 96
Sample Queries……Page 98
Passenger List……Page 99
All Persons on a Flight……Page 100
Summary……Page 101
Index……Page 102
Reviews
There are no reviews yet.