2017-10-21 60 views
0

J'ai une table appelée EMPLOYEE_DETAILS avec ces colonnes:Comment donner AUTOINCREMENT à la colonne pour une table particulière dans SQL Server?

@EMPLOYEEE_ID, 
    @EMPLOYEE_FIRSTNAME, 
    @EMPLOYEE_MIDDEL_NAME, 
    @EMPLOYEE_LAST_NAME, 
    @EMPLOYEE_CODE, 
    @EMPLOYEE_WORKDEPT, 
    @EMPLOYEE_PHONENO, 
    @EMPLOYEEE_HIREDATE, 
    @EMPLOYEE_JOB, 
    @EMPLOYEE_POSITION, 
    @EMPLOYEE_SEX, 
    @EMPLOYEE_BIRTHDATE, 
    @EMPLOYEE_SALARY, 
    @EMPLOYEE_BONUS, 
    @EMPLOYEE_COMM 

Maintenant, EMPLOYEE_ID est la clé primaire, mais il n'a pas de valeur autoincrement.

Comment fournir une valeur auto-incrémentée si la colonne a déjà été créée sans supprimer la structure de la colonne?

est inférieure à la requête que je l'ai essayé, mais je m'y suis une erreur:

Msg 156, Level 15, State 1, Line 8
Incorrect syntax near the keyword 'IDENTITY'.

code:

ALTER TABLE EMPLOYEE_DETAILS 
    ALTER COLUMN EMPLOYEE_ID IDENTITY(1,1); 
+0

Et l'erreur était ????? – Tanner

+0

S'il vous plaît voir les questions que je l'ai mis à jour. –

+0

Ensuite, le problème auquel je serais confronté est la migration des données existantes si, je vais supprimer la structure de tabel. comment pourrais-je résoudre ce problème alors. –

Répondre

-2

Pour modifier la une colonne déjà créé comme autoincrement. Essayez cette requête:

ALTER TABLE table_name MODIFY EMPLOYEE_ID datatype(length) AUTO_INCREMENT PRIMARY KEY 

Vous ne pouvez pas créer une colonne existante en tant que colonne IDENTITY. Soit vous déposez et recréer la table avec la colonne marquée comme IDENTITY ', soit déposez la colonne et ajoutez une nouvelle colonne IDENTITY`.

+0

Ensuite, le problème auquel je serais confronté est la migration des données existantes si, je vais supprimer la structure de tabel. comment pourrais-je résoudre ce problème alors. –

+0

Je ne vous comprends pas. Pourquoi auriez-vous besoin de supprimer la structure de la table si vous modifiez une propriété de la colonne existante –

+0

Vous ne pouvez pas ajouter de propriété d'identité à une table existante. Vous devez supprimer la table et la recréer. –