Solved

# multiple unique columns in a table

Posted on 2011-09-16
383 Views
can we have multiple unique columns in a table. I was not clear on this concept. Please advise. thanks in advance
0
Question by:gudii9

LVL 47

Expert Comment

ID: 36552810
you can have multiple unique columns in a table - there is nothing that may prevent it
0

LVL 47

Accepted Solution

for_yan earned 125 total points
ID: 36552821
Let's say you have the table of patients of the hospital - they may have their own id for each patient , but they may have a column for insusrance id and those
may be also be unique - certainly no problem with that
0

LVL 37

Assisted Solution

momi_sabag earned 125 total points
ID: 36552830
you can have as many unique constraint you want on a table
a unique constraint verify that a column or set of columns have unique values in every row in a table
0

LVL 21

Assisted Solution

Amitkumar Panchal earned 125 total points
ID: 36553738
Yes, You can have unique constraint on the all fields of the table. Only thing is that if the column having unique constraint must contains a unique value in that field across the table. However, the field contains a null (no value) value in it, so multiple null values are allowed in the field having a  unique constraint.
0

LVL 45

Assisted Solution

Kdo earned 125 total points
ID: 36553894
Hi gudi,

The easiest way to enforce multiple unique columns in a table is to put a unique index on each of the columns.

In fact, if you have a significant amount of data in the table it will be almost imperative to have these columns indexed as every insert or update will need to verify that the new data is unique within the column.  Without indexes on these column a full table scan will be required just to insert a new row!

Good Luck,
Kent
0

LVL 7

Author Comment

ID: 36718886
How to put  unique index on each column
0

LVL 47

Expert Comment

ID: 36718899
you can create index for any column or you can impose unique constraint on each colimn -
thes are different things
0

LVL 45

Expert Comment

ID: 36718913
Hi gudi,

You'll need to add the index or constraint for each column that must be unique.

CREATE UNIQUE INDEX idx0001 ON mytable (column1);
CREATE UNIQUE INDEX idx0002 ON mytable (column2);
etc....

Kent
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question