ホームページ >データベース >mysql チュートリアル >自動インクリメントを維持しながら MySQL の列から主キーを削除するにはどうすればよいですか?

自動インクリメントを維持しながら MySQL の列から主キーを削除するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-28 15:16:10780ブラウズ

How to Remove Primary Keys from Columns in MySQL While Keeping Auto-Increment?

MySQL での主キーの削除

質問:

MySQL テーブルの特定の列から主キーを削除するにはどうすればよいですか?自動インクリメントされる ID をプライマリとして維持しながらkey?

応答:

背景:

MySQL では、自動インクリメント カラムは、インデックスを使用しないと、他の列から主キーを削除することが困難になります。エラー。

解決策:

特定の列から主キーを削除するには、次の手順に従います:

  1. 自動インクリメントを無効にする: ALTER TABLE ステートメントを使用して、id 列のデータ型を INT に変更し、NOT NULL を削除しますconstraint.
ALTER TABLE user_customer_permission MODIFY id INT;
  1. Drop Primary Key: 自動インクリメント プロパティが削除されたら、ALTER TABLE ステートメントを使用して user_customer_id から主キー制約を削除します。およびpermission_id columns.
ALTER TABLE user_customer_permission DROP PRIMARY KEY;

追加の考慮事項:

  • 元の複合主キーは 3 つの列すべてにまたがっていたため、id 列は一意ではない可能性があります.
  • ID が一意の場合、ID の主キーと自動インクリメント プロパティを再度有効にすることができます。列。
ALTER TABLE user_customer_permission MODIFY id INT NOT NULL PRIMARY KEY AUTO_INCREMENT;

以上が自動インクリメントを維持しながら MySQL の列から主キーを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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