Today we continue our series of posts on data normalization. In the previous post on data normalization I explained what functional dependency is. Today we will talk about candidate keys in a table. Read more
Do you remember the ? I promised you we'd explain how to design tables which have no update anomalies. Today we begin a series of posts on data normalization. We will talk about functional dependencies, a concept that needs to be explained before we dive deeply into database schema normalization.
The subject is rather abstract... Read more
In this article I will show you an example of the table that looks correct at first glance but when you try to modify data in it, several anomalies can occur. We'll discuss insert anomalies, update anomalies and delete anomalies. Read more
So you want to create your first database model but you don't know how to start? Read on!
I assume you already know a little about tables, columns, and relationships. If you don’t, watch our video tutorials before you continue. Read more
It's been already 100 days since we launched Vertabelo. There is already 1000 satisfied Vertabelo users. Thank you for your trust and interaction! Read more
In this third part of our Database Design 101 series you will learn about references – how to create a relationship between the tables, how it affects their structure, and how it looks in the data. Read more
Sorry for that tabloid title, but I couldn't resist. I'm going to show you how to view the database design of other people’s systems. It will work for legacy systems as well. Of course, you may call show tables and describe table in the database console but that’s a very rudimentary way to examine the structure. You'll miss... Read more
Suppose we design a database. We've created some tables, each one has a few columns. Now we need to choose columns to be primary keys (PK) and make references between tables. And here some inexperienced designers face the dilemma – should a primary key be natural or surrogate?
There's one and only one answer to... Read more