Normalisation 
  Normalisation is the process of separating your data into logical parts based upon a series of rules. The goal of normalisation is to eliminate all data redundancy, whilst also making your table design optimal.
  It is not necessary  to normalise your table design, but it is recommended.
 
    Want to learn PHP 7? 
    Hacking with PHP has been fully updated for PHP 7, and is now available as a downloadable PDF. Get over 1200 pages  of hands-on PHP learning today!
    
 
If this was helpful, please take a moment to tell others about Hacking with PHP by tweeting about it!
Next chapter: Why separate data? >>  
Previous chapter: Mixing SQLite and PHP: SQLite3::createFunction() 
Jump to: Databases    Introduction       Database hierarchy       Types of data       Date and time       Transactions       Stored procedures       Triggers       Views       Keys       Referential integrity       Indexes       Persistent connections       Temporary Tables       Table handlers       Round up    History       MySQL       PostgreSQL       Oracle       Microsoft SQL Server    SQL       SQL comments       Interacting with MySQL       Creating tables       Making table changes       Deleting tables       Inserting data       Selecting data       Extra SELECT keywords       Updating data       Deleting data       MySQL for dummies       A working example       Multiple WHERE conditions       Grouping rows together with GROUP BY       MySQL functions       Managing indexes       Simple text searching using LIKE       Advanced text searching using full-text indexes       Range matching       Working with NULL       Default values    Using MySQL with PHP       Connecting to a MySQL database       Querying and formatting       Disconnecting from a MySQL database       Reading in data       Mixing in PHP variables       Results within results       Advanced formatting       Reading auto-incrementing values       Unbuffered queries for large data sets: MYSQLI_USE_RESULT    phpMyAdmin    PEAR::DB       Quick PEAR::DB calls       Query information       Advanced PEAR::DB       Impeared performance?    SQLite       Using SQLite       Before you begin       Getting started with SQLite 3       Advanced usage: SQLite3::lastInsertRowID() and SQLite3::querySingle()       Mixing SQLite and PHP: SQLite3::createFunction()    Normalisation       Why separate data?       So, what is the solution here?       Why not separate data?       First normal form       Second normal form       Other normal forms       Conclusion    Table joins       Complex joins    Using temporary tables    Adjusting the priority queue    How to design your tables    Picking the perfect data type    When MySQL knows best    Persistent connections    Choosing a table type    Transactions    MySQL Improved    Subselects, views, and other advanced functions       Subselects       Views       Referential integrity    Summary    Exercises    Further reading    Next chapter   
 
Home: Table of Contents 
 
Copyright ©2015 Paul Hudson. Follow me: @twostraws .