2016-04-20 9 views
0

はどのようにちょうどIdはもうIDENTITYでないために変更する方法があるにもドロップし ドロップして再作成制約

CREATE TABLE [WarehouseMgmt].[DimCountry] (
    [Id]   INT   IDENTITY (1, 1) NOT NULL, 
    CONSTRAINT [IX_DimCountry] UNIQUE NONCLUSTERED ([Id] ASC) ON [PRIMARY] 

IX_DimCountry CONSTRAINT

を再作成し、この

CREATE TABLE [WarehouseMgmt].[DimCountry] (
    [Id]   INT   NOT NULL, 
    CONSTRAINT [IX_DimCountry] UNIQUE NONCLUSTERED ([Id] ASC) ON [WH_IX] 

を持っているとは?

+0

の可能性のある重複した[制約を変更する方法](http://stackoverflow.com/questions/13244889/how-to-alter-constraint) – CiucaS

+0

この記事を参照してください:[自動インクリメントを削除する方法SQL Server 2012のテーブルから](http://stackoverflow.com/questions/23511309/how-to-remove-auto-increment-from-table-in-sql-server-2012) –

答えて

1

あなたはデータを保持しますが、IDENTITY列を削除する必要がある場合は、する必要があります:

新しい列 ドロップするように既存のIDENTITY列から既存のIDENTITY列をデータを転送し、新しい列 を作成します。 。 はあなたがIDENTITYを削除することはできません元の列名

0
ALTER TABLE [WarehouseMgmt].[DimCountry] DROP CONSTRAINT IX_DimCountry; 


ALTER TABLE [WarehouseMgmt].[DimCountry] 
ADD CONSTRAINT IX_DimCountry UNIQUE(id) 

に新しい列の名前を変更します。

Remove Identity from a column in a table

関連する問題