문제

나는 테이블 직원에게 프로그래밍 방식으로 신원 열을 추가하려고합니다. 내 구문으로 내가 뭘 잘못하고 있는지 잘 모르겠습니다.

ALTER TABLE Employees
  ADD COLUMN EmployeeID int NOT NULL IDENTITY (1, 1)

ALTER TABLE Employees ADD CONSTRAINT
    PK_Employees PRIMARY KEY CLUSTERED 
    (
      EmployeeID
    ) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, 
    ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

내가 뭘 잘못하고 있죠? 스크립트를 내보내려고했지만 SQL MGMT Studio는 전체 임시 테이블 이름 이름을 바꿉니다.

업데이트: "키워드 '열'근처의"잘못된 구문 "이있는 첫 번째 진술에서 질식하고 있다고 생각합니다.

도움이 되었습니까?

해결책

그냥 제거하십시오 COLUMN ~에서 ADD COLUMN

ALTER TABLE Employees
  ADD EmployeeID numeric NOT NULL IDENTITY (1, 1)

ALTER TABLE Employees ADD CONSTRAINT
        PK_Employees PRIMARY KEY CLUSTERED 
        (
          EmployeeID
        ) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, 
        ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

다른 팁

이것이 테이블에 새 열을 추가하는 방법입니다

ALTER TABLE [tableName]
ADD ColumnName Datatype

예를 들어

ALTER TABLE [Emp]
ADD Sr_No Int

그리고 당신이 그것을 자동 증분시키고 싶다면

ALTER TABLE [Emp]
ADD Sr_No Int IDENTITY(1,1) NOT NULL

표에 열을 추가하기위한 올바른 구문은 다음과 같습니다.

ALTER TABLE table_name
  ADD column_name column-definition;

귀하의 경우에는 다음과 같습니다.

ALTER TABLE Employees
  ADD EmployeeID int NOT NULL IDENTITY (1, 1)

여러 열을 추가하려면 브래킷을 사용합니다.

ALTER TABLE table_name
  ADD (column_1 column-definition,
       column_2 column-definition,
       ...
       column_n column_definition);

COLUMN SQL Server의 키워드는 변경에만 사용됩니다.

ALTER TABLE table_name
  ALTER COLUMN column_name column_type;

테이블의 시작 부분에 열을 추가하려는 경우 임시 테이블 이름을 변경할 수 있습니다 (순서를 변경하는 것보다 쉽기 때문에). 또한 직원 테이블에 데이터가있는 경우 삽입 선택 *을 수행해야하므로 EmployeeID를 계산할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top