Bonjour à tous,

J'effectue une requete qui transvase des données d'une table dans une autre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
INSERT INTO t1 (c1, c2, c3) 
SELECT c1, c2, c3 FROM t2
Jusque là tout va bien.
Soit les valeurs suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
T1
c1         c2            c3
--------  -----------  ----------
a           b              c
d           e              f             <---
a           e              f
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
T2
c1         c2            c3
--------  -----------  ----------
x           y              z
t           u              v
d           e              f             <---
On remarque que ('d', 'e', 'f') est dans chaque table.
Or la clef est (c1, c2, c3), donc SQLServeur me jette car il peut pas inserer de clef en double.

Jusque là ca va encore.
Ma question est la suivante :
Est ce que SQLServeur s'arrète à la première erreur rencontrée ou est-ce qu'il continue l'insertion ? (il me dit que la commande a été arrêtée )

Question subsidiare :
Comment modifié ma requète pour que je puisse insérer seulement les n-uplets de t2 qui ne sont pas dans t1 ?

Merci de votre aide,

N