Toujours spécifiez la liste des colonnes dans les instructions d'insertion et dans insert...select vous devez toujours la spécifier deux fois - à la fois dans le insert
clause et dans la select
clause.
De plus, SQL Server générera une erreur si vous utilisez set identity_insert on
sans spécifier explicitement la liste des colonnes dans le insert
clause, donc même si vous obteniez toutes les colonnes dans le bon ordre, vous auriez toujours une erreur dans ce cas.
Pour plus d'informations, lisez Mauvaises habitudes à abandonner :SELECT ou INSERT sans liste de colonnes auquel Shnugo a fait un lien dans son commentaire.