1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
   |  
SQL> create table dvp ( a varchar2(10) , b number , c  varchar2(10) ) ; 
 
Table créée.
 
SQL>  create table dvp2 ( a varchar2(10) , b number , c  varchar2(10) ) ; 
 
Table créée.
 
SQL> alter table dvp add constraint dvp_pk primary key (a,b,c) ;
 
Table modifiée.
SQL>  insert into dvp2  values ('a',1,'b') ;
 
1 ligne créée.
 
SQL> insert into dvp2  values ('a',2,'b') ;
 
1 ligne créée.
 
SQL> insert into dvp2  values ('a',3,'b') ;
 
1 ligne créée.
 
SQL> commit ;
 
Validation effectuée.
 
SQL> insert into dvp  values ('a',1,'b') ;
 
1 ligne créée.
 
SQL> commit ;
 
Validation effectuée.
 
SQL> insert into dvp select a,b,c from dvp2 ;
insert into dvp select a,b,c from dvp2
*
ERREUR à la ligne 1 :
ORA-00001: unique constraint (FORMATION.DVP_PK) violated
SQL> insert into dvp select a,b,c from dvp2 where not exists ( select 'X' from dvp 
  2  where dvp.a=dvp2.a and dvp.b=dvp2.b and dvp.c= dvp2.c ) ; 
 
2 ligne(s) créée(s). | 
Partager