>데이터 베이스 >MySQL 튜토리얼 >기존 SQL Server 열에 ID 속성을 추가하는 방법은 무엇입니까?

기존 SQL Server 열에 ID 속성을 추가하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-22 23:22:11927검색

How to Add an Identity Property to an Existing SQL Server Column?

기존 SQL Server 열에 ID 추가: 두 가지 방법

SQL Server의 기존 열에 ID 속성을 직접 추가하는 것은 간단한 작업이 아닙니다. 이 문서에서는 이를 달성하기 위한 두 가지 방법에 대해 설명하며 각 방법에는 장단점이 있습니다.

방법 1: ID를 사용하여 새 테이블 만들기

이 방법은 기존 데이터를 보존합니다.

<code class="language-sql">CREATE TABLE dbo.Tmp_Names (
  Id INT NOT NULL IDENTITY(1, 1),
  Name VARCHAR(50) NULL
) ON [PRIMARY]
GO

SET IDENTITY_INSERT dbo.Tmp_Names ON
GO

IF EXISTS (SELECT * FROM dbo.Names)
    INSERT INTO dbo.Tmp_Names (Id, Name)
    SELECT Id, Name
    FROM dbo.Names TABLOCKX
GO

SET IDENTITY_INSERT dbo.Tmp_Names OFF
GO

DROP TABLE dbo.Names
GO

EXEC sp_rename 'Tmp_Names', 'Names'</code>

방법 2: 새 ID 열 추가 및 기존 ID 열 교체

이 접근 방식은 새 ID 열에 기존 데이터를 유지하지 않습니다.

<code class="language-sql">ALTER TABLE Names
ADD Id_new INT IDENTITY(1, 1)
GO

ALTER TABLE Names DROP COLUMN ID
GO

EXEC sp_rename 'Names.Id_new', 'ID', 'COLUMN'</code>

중요 고려 사항:

두 방법 중 하나를 구현하기 전에 원래 기본 키 열에 연결된 모든 외래 키 제약 조건을 해결해야 합니다. 그렇지 않으면 데이터베이스 오류가 발생합니다.

자세한 정보와 문제 해결을 보려면 다음 Microsoft SQL Server 포럼 스레드를 참조하세요.

https://www.php.cn/link/16dd8c942ad630be7e5a12b681b3f5c4

위 내용은 기존 SQL Server 열에 ID 속성을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.