mkaz.com home photography web dev personal about

Web DB Tutorial : Getting Started

The first thing you need to do is figure out what you want to do. This tutorial is to build a database which manages links to other sites. I will want to be able to add, edit and remove the links in the database, as well as display the links from the database. I also want the links to be categorized so I can display a groups of links, instead of all links at once.

I want to record the following data for each link in the database:

Each of these will become one column in a table in the database. If you are not familiar with databases, a table can be thought of somewhat as a spreadsheet in Excel. The columns in a spreadsheet relate to the columns in a database. Each row in the spreadsheet would be considered a record (or row) in the database. As there can be multiple spreadsheets in a single Excel file, there can be multiple tables in one database.

This application could use two tables, one table to store all of the categories and another table to store all the links, with a key back to the categories table. Since this is a beginner tutorial to keep it simple I will use just one table to store the info.

Advanced Topic
However, using two tables would probably be the better way of creating this application. The second table would store all of the category names separately with a unique key. The unique key is just a number for each category, usually starting at 1 for the first category, 2 for the next, and so on.

A record in the links table, which are the individual links, would have a column to store this category number with the link. This number is then used to refer back to the category table to get the category name when needed. It is a little more complicated but it is a much better way to create the database.

The benefits to using multiple tables is you get faster queries, and it is easier to manage the data. Some examples of the benefits of multiple tables:

  • Faster query when selecting the list of all categories because you are querying a smaller set of data.
  • Faster queries when selecting links by category, because it is faster to select, group and sort numbers compared to text.
  • Easier to manage because you can change the category names separately from the links, since they only store the numbers as reference to the category name.
  • Easier to enter data by category because you can pull the category name from the table and display it in a select form element instead of requiring the use to type it in.

Using multiple tables (or databases) and relating their data to each other using keys is referred to as relational databases. Read more about relational database design from the related links below.

So moving on, I know what the application is to do, and what data will be stored in the database. The next step is to create the database.


Next Page: Create Database

Sections: Getting Started Create Database Insert Data View Data Manage Data Resources

Related Links:

Managing and Using MySQL (BOOK) Managing and Using MySQL
This book has all you need to take full advantage of this powerful database management system. It takes you through the whole process from installation and configuration to programming interfaces and database administration. Buy Now from Amazon.com


Introduction to Relational Database Design
A slightly more technical look at relational databases and how they are used. mSQL used as example, also knowledge of SQL would be a plus for reading this one.