SQL> create table t1(id1 char(2),id2 char(2),id3 char(2));
Table created.
SQL> desc t1
Name Null? Type
----------------------------------------- -------- ----------------------------
ID1 CHAR(2)
ID2 CHAR(2)
ID3 CHAR(2)
SQL> insert into t1 values('a',null,'a');
1 row created.
SQL> commit;
Commit complete.
SQL> select * from t1;
ID ID ID
-- -- --
a a
SQL> alter table t1
add constraint PK_EMP primary key (id1,id2,id3); 2
add constraint PK_EMP primary key (id1,id2,id3)
*
ERROR at line 2:
ORA-01449: column contains NULL values; cannot alter to NOT NULL
SQL> create unique index t1_idx1 on t1(id1,id2,id3);
Index created.
SQL> insert into t1 values('a',null,'a');
insert into t1 values('a',null,'a')
*
ERROR at line 1:
ORA-00001: unique constraint (SYS.T1_IDX1) violated