Bonjour,
Il suffit ne pas spécifier le champ de la clef primaire :
INSERT INTO TBL_AAA (champ2, champ3, champ4)
SELECT champ2, champ3, champ4
from TBL_AAA
WHERE PK_AAA = 1
> -- ;Nota: je ne veux pas déclarer les champs en clair dans le SELECT (pour assurer la maintenance) --
Oui mais dans ce cas çà n'est pas possible
De plus le * est un solution de facilité et pause de gros problèmes pour plein de chose... Il faut donc se forcer à lister les chgamps dans les requêtes.
Cordialement
Christian Robert - Winwise
http://blogs.developpeur.org/christian/
MCT - Database Development / Database Administration