What is Normalization?

Normalization is the process of organizing a database to reduce redundancy and improve data integrity.

Normalization also simplifies the database design so that it achieves the optimal structure composed of atomic elements (i.e. elements that cannot be broken down into smaller parts).

Also referred to as database normalization or data normalization, normalization is an important part of relational database design, as it helps with the speed, accuracy, and efficiency of the database.

Continue reading

Codd’s 12 Rules

Codd’s 12 rules is a set of rules that a database management system (DBMS) must satisfy if it’s to be considered relational (i.e. a relational DBMS).

The rules were proposed by Edgar F. Codd, who is considered a pioneer of the relational database model.

Codd’s 12 rules is actually a set of thirteen rules, numbered from zero to twelve. The twelve rules are based on a single foundation rule — Rule Zero.

Continue reading

RDBMS vs DBMS – What’s the Difference?

There’s a lot of confusion regarding the difference between an RDBMSs and a DBMS. I’ve even seen “RDBMS vs DBMS” forum posts where the accepted answer outlines the differences between RDBMSs and DBMSs, as though they were two distinct and different things.

However, this can be misleading.

The fact is, an RDBMS is a DBMS. But a DBMS is not always an RDBMS (but it often is).

So, is there a difference between an RDBMS and a DBMS or not? Is “RDBMS vs DBMS” the right way of looking at it, or is there more to it?

Continue reading

How to Install SQL Server on a Mac

Here I’ll show you how to get SQL Server up and running on your Mac in less than half an hour. And the best part is, you’ll have SQL Server running locally without needing any virtualization software.

Prior to SQL Server 2017, if you wanted to run SQL Server on your Mac, you first had to create a virtual machine (using VirtualBox, Parallels Desktop, VMware Fusion, or Bootcamp), then install Windows onto that VM, then finally SQL Server. This is still a valid option depending on your requirements (here’s how to install SQL Server on a Mac with VirtualBox if you’d like to try that method).

Starting with SQL Server 2017, you can now install SQL Server directly on to a Linux machine. And because macOS is Unix based (and Linux is Unix based), you can run SQL Server for Linux on your Mac. The way to do this is to run SQL Server on Docker.

So let’s go ahead and install Docker. Then we’ll download and install SQL Server.

But first… if you’re using a Mac with the M1 chip, see How to Install SQL Server on an M1 Mac (ARM64).

Continue reading