ホームページ > データベース > mysql チュートリアル > MySQL エラー 1022: テーブル作成時の重複キー制約を解決するにはどうすればよいですか?

MySQL エラー 1022: テーブル作成時の重複キー制約を解決するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-18 10:34:14
オリジナル
309 人が閲覧しました

MySQL Error 1022: How Do I Resolve Duplicate Key Constraints When Creating a Table?

MySQL エラー 1022: テーブル内の重複キー

シナリオ:

を作成しようとしたときテーブルの場合、重複キー制約を示す複雑なエラー 1022 が発生します。違反。クエリを確認したにもかかわらず、重複の原因は依然としてわかりません。

説明:

エラー メッセージには usercircle テーブル内の重複キーが示されていますが、原因は次のとおりである可能性があります。データベース スキーマの別の部分にあります。外部キー制約や一意キー制約などの制約は、単一のテーブル内だけでなく、データベース全体で一意である必要があります。

解決策:

  1. 重複を特定制約:

    • 次のクエリを実行して、データベース内で制約が使用されている場所を検索します:
    SELECT `TABLE_SCHEMA`, `TABLE_NAME`
    FROM `information_schema`.`KEY_COLUMN_USAGE`
    WHERE `CONSTRAINT_NAME` IN ('iduser', 'idcategory');
    ログイン後にコピー
  2. 重複の名前を変更制約:

    • 重複した制約が見つかった場合は、名前を変更するだけで競合を解決できます。たとえば、別のテーブルに iduser という名前の別の制約がある場合は、その名前を iduser_other.
  3. Recreate Table:

      重複した制約の名前を変更したら、更新された制約で usercircle テーブルを再作成します。 query.
次の手順に従うと、エラー 1022 を解決し、重複キー制約なしで目的のテーブルを正常に作成できます。

以上がMySQL エラー 1022: テーブル作成時の重複キー制約を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート