Bonjour,
j'aimerais faire un insert de plusieurs centaines de lignes, pour cela je fais :
Le problème c'est que COL1 est un numéro, clé unique mais pas auto incrémenté.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO MATABLE SELECT COL1,COL2,... FROM MATABLE2 WHERE COL2 = 'XXX'
Je pensais donc faire
Mais ça ne fonctionne pas, ça me renvoi, que la clé existe déjà.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 INSERT INTO MATABLE SELECT (SELECT ISNULL(MAX(COL1),0) + 1 FROM MATABLE), COL2,... FROM MATABLE2 WHERE COL2 = 'XXX'
Comment faire pour le SELECT MAX prenne en compte les lignes en cour de création par l'INSERT ?
Partager