반응형

SQL Server에서 Identity Column은 테이블에 고유한 값을 자동으로 생성하는 기능입니다. 주로 테이블의 Primary Key로 사용되며, 값의 중복을 방지하는 기능을 가지고 있습니다.

생성 방법

테이블을 생성할 때 Identity Column을 추가하는 방법입니다.

CREATE TABLE [테이블명](
  [ID] INT IDENTITY(1,1) PRIMARY KEY,
  [Name] NVARCHAR(50),
  [Email] NVARCHAR(50)
)

사용 방법

Identity Column을 사용하여 데이터를 입력할 때는 해당 컬럼의 값을 직접 입력할 필요가 없습니다.

INSERT INTO [테이블명]([Name], [Email])
VALUES ('John Doe', 'johndoe@example.com')

주의점

  • Identity Column은 테이블 내의 모든 레코드에서 고유한 값을 생성해야 합니다.
  • 기존 레코드의 값을 수정할 경우, 고유한 값을 유지할 수 없으므로 주의해야 합니다.
  • SET IDENTITY_INSERT를 사용할 때에도 고유한 값을 유지하는 것을 확인해야 합니다.

SET IDENTITY_INSERT

Identity Column은 직접 값을 입력하는 것을 허용하지 않습니다. 하지만, 데이터를 마이그레션 한다든지 꼭 필요한 값으로 등록해야 하는 경우 SET IDENTITY_INSERT라는 기능을 사용하여 값을 직접 입력할 수 있는 것을 허용할 수 있습니다.

사용법

  • SET IDENTITY_INSERT 테이블명 ON/OFF
  • 예시
SET IDENTITY_INSERT [dbo].[test_table] ON
GO

INSERT INTO [dbo].[test_table] ([ID], [Name], [Age])
VALUES (1, 'John Doe', 25)
GO

SET IDENTITY_INSERT [dbo].[test_table] OFF
GO
  • 주의사항
    • Identity Column의 값이 기존의 레코드와 중복되면 오류가 발생할 수 있으므로 주의해야 합니다.
    • 반드시 다시 OFF 상태로 전환시켜야 Identity Column이 정상 동작 합니다.

 

반응형

+ Recent posts