A primary is one of the most important aspects of a database implementation and its function is mainly to make records in the database table unique to avoid redundancy. Primary keys are generally used in the design and implementation of relational database systems.
The primary key, which is often called a unique key, is a candidate key (a key which tells us how we can identify individual tuples in a relation) used for identifying uniqueness of each row in a relational database table.
The primary key is comprised of single column or set of columns which are found the table whose main purpose is making sure that no two distinct rows in the table will have the same or combination of values found in those columns. A relational database table may have arbitrarily many unique keys depending on the database design but at most, a table can only have one primary key.
As an example of a real life scenario where primary keys are used in a relational table, let is take the case of a university database. Let us say that there are three tables in a student records database. Let us call the first table as STUDENTS and this table contains a record of all of the students in the university.
Let us call the second table as CLASS which will be used to store the record foe each of the class being offered by the school. Finally, us call the third relational database table as ENROLMENT which we will use to store all records pertaining to student enrolments with each record representing a single student enrolling in a particular course offering.
It we imagine the relational database with those three tables alone, we can picture out that there would be multiple records for each of the students which represents all the classes that each student in enrolled in. Likewise, we would also picture out multiple records for each class session which represents all the students enrolled in the particular class.
Using the student ID as a unique identifier would be a good choice for a primary key in the table STUDENTS. Other pertinent data like the last name or first name would not be a good choice because there could be exactly similar data as they are. For example, there may be ten or more people having first name of Mary or Joyce or there may be more than one hundred records with Smith for a family name.
Other common examples of data used for primary key are Social Security numbers that are associated with a specific person or ISBNs which are associated with a specific book.
A limited primary key is just basically a primary key like the one in the above example but it is used in certain cases in large database implementations for data warehouses. For a data warehouse which contains a section for highly confidential data regarding business operations or client information, certain precautionary measures are implemented to protect said data.
The uniqueness of a Limited Primary Key is limited to a subset of the data occurrences within the scope of the common data architecture. Limited primary keys are used for the records in this confidential relational database for a highly specialized purpose.
These limited primary keys are seldom used for foreign as in the common case with ordinary primary keys for the reason that when they are used as foreign keys, the may be sniffed within the network thereby exposing them to potential hacks no matter how remote the incidence may be. But other than that, limited primary keys are as ordinary as the "traditional" primary keys.