ホームページ >データベース >mysql チュートリアル >既存の主キーを持つテーブルに自動インクリメント ID を追加するにはどうすればよいですか?

既存の主キーを持つテーブルに自動インクリメント ID を追加するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-01 14:01:11870ブラウズ

How to Add an Auto-Increment ID to a Table with an Existing Primary Key?

既存のテーブルに自動インクリメント ID を追加する方法

データベースを保守する場合、自動インクリメント ID を追加する必要がある場合があります。既存のテーブルに列を増分します。ただし、主キーがすでに定義されている場合、このタスクには課題が生じる可能性があります。

元の問題:

開発者が自動インクリメントを追加しようとしたときにエラーが発生しました次の構文を使用して「users」という名前のテーブルに ID を指定します:

ALTER TABLE users
ADD id int NOT NULL AUTO_INCREMENT

エラーが発生しました結果:

#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

解決策:

既存の主キーを持つテーブルに自動インクリメント ID を正常に追加するには、次の構文を使用します:

ALTER TABLE `users` ADD `id` INT NOT NULL AUTO_INCREMENT;

この変更された構文は、自動インクリメント列を主キーとして正しく定義し、エラー。

以上が既存の主キーを持つテーブルに自動インクリメント ID を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。