如何将AUTOINCREMENT赋予SQL Server中特定表的列?

时间:2017-10-21 07:28:19

标签: sql sql-server auto-increment

我有一个名为EMPLOYEE_DETAILS的表,其中包含以下列:

    @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

现在,EMPLOYEE_ID是主键,但它没有自动增量值。

如果已创建列而不删除列结构,如何提供自动增量值?

以下是我尝试的查询,但是我收到了错误:

  

Msg 156,Level 15,State 1,Line 8
  关键字' IDENTITY'。

附近的语法不正确

代码:

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

1 个答案:

答案 0 :(得分:-2)

将已创建的列修改为自动增量。试试这个问题:

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

您不能将现有列作为IDENTITY列。您可以删除并重新创建包含标记为IDENTITY'的列的表,或者删除该列并添加新的IDENTITY列。