ホームページ >データベース >mysql チュートリアル >データを含む既存の SQL Server テーブルに ID 列を追加するにはどうすればよいですか?
問題: すでにデータが含まれている SQL Server テーブルに ID 列を追加する必要があります。 既存の列を直接変更して ID にすることはサポートされていません。
解決策: これを実現するには 2 つの方法があります:
方法 1: 新しいテーブルを作成する
このメソッドは既存のデータを保存します。 ID 列を含む新しいテーブルが作成され、データがコピーされ、古いテーブルが置き換えられます。
T-SQL:
<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 列を追加し、古い主キーを削除して、新しい列の名前を変更します。 注: 元の主キー列の既存のデータは保持されません。
T-SQL:
<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>
重要な考慮事項:
この情報は、中心的な意味とイメージを維持しながら、元のテキストのより簡潔で合理的な説明を提供します。
以上がデータを含む既存の SQL Server テーブルに ID 列を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。