Also known as a primary keyword or a unique identifier, a primary key is key used in a relational database which uniquely represents each record. It is a set of one or more data characteristics and its value uniquely identifies each data occurrence in a data subject. It can be any unique identifier in a database table's records such a driver's license, a social security number, or a vehicle identification number. There can only be one primary key in a relational database. Typically, primary keys appear as columns in relational database tables.
The administrator has the power of choice of a primary key in a relational database although it may be very possible to change the primary key for a given database when the specific needs of the users changes. For instance, it may be more convenient to uniquely to uniquely identify people by their telephone numbers in some areas than to use driver license numbers in one application to uniquely identify records.
There all many kinds of keys in a database implementation but a primary key is a special case of unique keys. One of the biggest distinctions of a primary key from other unique keys is that the implicit NOT NULL constraint is automatically enforced unlike the case of the other unique keys. With this enforced restriction, the primary key will never contain any NULL value. Another main distinction of primary keys is that the keys must be defined using a certain syntax.
As expressed through relational calculus and relational algebra, the relational model distinguished between primary keys and other kinds of keys. The primary keys were only added to the SQL standard for the main reason that it gives more convenience to the programmer or database developers and administrators. The primary keys, as well as other cases of unique keys, can be referenced outside its table by foreign keys.
One of the most important things to note in implementing and designing a good database is in choosing a primary key. Each database would definitely need a primary keys so it can ensure row level accessibility. When an appropriate primary key is being chosen, one can already specify a primary key value which lets the person query each of the table row individually and modify each of the row without having to alter other views in the same table The values composing a primary key column are unique so no two values will ever be the same.
Each database table has one and only one primary key which can consist of one or many columns and this is very important. But it can also be possible to have a concatenated primary comprised of two or more columns. There might be several columns or groups of columns in a single table that may serve as a primary key and are called candidate keys. A table can have more than one candidate key but there can only be one candidate key that can become a primary key for the table.
There are some cases in database design that the natural key that uniquely identifies a table in a relation is difficult to use for software development. The case may involve having multiple columns or large text fields. This difficulty may be addressed by employing what is called a surrogate key. A surrogate key can be used as a primary key. In some other cases there may be more than one candidate key for a relation, and no candidate key is apparently preferred. This can be addressed again by using a surrogate key to be used as primary key in order to avoid having to give one candidate key artificial primacy over the others.