For some applications, it is useful to uniquely identify the rows in a table by one or more columns so that you can process them in a specified sequence, for example. You can do this by assigning a “primary key.” The column names that are to create the table key are represented by the keywords PRIMARY KEY. The input values of the key columns defined in this way must not be a NULL value.
You can use the primary key to insert rows in a table in the same way as you insert rows in a base table when no primary key is defined. However, the system outputs an error message if you attempt to insert an existing value into the primary key column a second time, since the uniqueness of the column is ensured by defining the primary key.
A primary key can consist of multiple columns. However, it is unusual for a key to be constructed from more than five columns, since this makes it difficult for users to enter unique values. The arrangement of the columns behind the keywords PRIMARY KEY defines the key sequence.
See also:
Key Definition (key_definition)
You can specify a primary key when you define the table or add it to an existing table at a later stage.
You can define primary keys that refer to one table column only.
You can use the CREATE TABLE statement to define primary keys when you create a table.
CREATE TABLE hotel.person
(pno FIXED(6) PRIMARY
KEY,
name CHAR(20),
city CHAR(20))
or
CREATE TABLE hotel.person
(pno FIXED(6),
name CHAR(20),
city CHAR(20),
PRIMARY KEY (pno))
Both statements result in the following: it must be possible to uniquely identify the rows in the person table on the basis of the person number.
See also:
CREATE TABLE Statement (create_table_statement)
You can use the ALTER TABLE statement to add primary keys to existing tables.
...
1.
Drop
the person table.
DROP
TABLE hotel.person
2.
Create
the person table as follows:
CREATE
TABLE hotel.person
(pno FIXED(6),
name CHAR(20),
city CHAR(20))
3.
Add a
primary key:
ALTER
TABLE hotel.person ADD PRIMARY KEY (pno)
It must be possible to uniquely identify the rows in the person table on the basis of the person number.
You can define a primary key in several columns in the table.
4.
Drop
the person table.
DROP
TABLE hotel.person
5.
Create
the person table as follows:
CREATE
TABLE hotel.person
(pno FIXED(6),
name CHAR(20),
city CHAR(20))
6.
Add a
primary key:
ALTER TABLE hotel.person
ADD PRIMARY KEY (pno,name)
It must be possible to uniquely identify the rows in the person table on the basis of the person number and name.
See also:
ALTER TABLE Statement (alter_table_statement)
ADD Definition (add_definition)
You can use the ALTER TABLE statement to change existing primary keys.
ALTER TABLE hotel.person ALTER PRIMARY KEY (pno)
It must be possible to uniquely identify the rows in the person table on the basis of the person number.
See also:
ALTER Definition (alter_definition)
You can use the ALTER TABLE statement to drop primary keys.
ALTER TABLE hotel.person DROP PRIMARY KEY
See also:
DROP Definition (drop_definition)