SQL SELECT INSERT INTO Générer des Id Unique

Je suis d'essayer de sélectionner une table de données et insérer ces données dans un autre fichier avec les mêmes noms de colonnes (il s'agit essentiellement de données en double). Cours syntaxe comme suit:

INSERT INTO TABLE1 (id, id2, col1, col2)
SELECT similiarId, similiarId2, similiarCol1, similiarCol2  
FROM TABLE2

Le problème que j'ai est la génération de la clé unique de champs (déclaré comme étant des entiers) pour les nouveaux enregistrements insérés. Je ne peux pas utiliser table2 la clé de la table1 a données existantes et de l'erreur sur les valeurs de clés dupliquées.

Je ne peux pas changer le schéma de la table et ce sont des id personnalisé colonnes ne sont pas générées automatiquement par la DB.

est-il important de conserver les valeurs d'origine de clés?
ne pas insérer similarid de table2 et laissez table table1 générer un nouveau code pour les lignes
est l'ID dans le tableau 1 un IDENTIFIANT personnalisé ? Si non, vous pouvez utiliser l'IDENTITÉ de l'identité et va créer automatiquement les ID pour vous.
vous pouvez utiliser autoincrement pour table1 et ne l'insérez pas similarId dans le tableau 1 que le rs a dit.
Ne pouvez-vous pas simplement d'ajouter une colonne d'identité à table1 et faire de la nouvelle colonne de la clé primaire? Alors que vous venez de faire insérer la nouvelle colonne de clé primaire et de l'identité génère automatiquement vos clés.

OriginalL'auteur user1464435 | 2012-06-18