MySQL で複数の主キーが定義されているエラーの解決方法

MySQL で複数の主キーが定義されているエラーの解決方法

主キーを作成するには 2 つの方法があります。

テーブルテーブル名を作成(
フィールド名タイプ、
フィールド名タイプ、
…
主キー(名前)
);

または

テーブルテーブル名を作成(
フィールド名タイプ主キー、
フィールド名タイプ、
…
);

ただし、複合主キーを作成する場合は、2 番目の方法を使用できないことに注意してください。
ここに小さな例を示します。

ここでは、「複数の主キーが定義されています」というエラーが報告されており、複数の主キーが定義されていることを示しています。正しい書き方は次のとおりです。

アイテムに複合主キーが設定されている場合、複合主キーの作成と削除が同時に行われるため、主キーを削除する必要があります。ただし、ここでは自動インクリメントが設定されているため、主キーを削除する前に、まず自動インクリメントを削除する必要があります。自動インクリメントを削除せずに主キーを直接削除すると、エラーが報告されます(以下を参照)。

まず自動増分を削除する必要があります:

ここで複合主キーを作成する場合、まず name フィールドの通常のインデックスを削除し、次に stu_id フィールドと name フィールドの両方に複合主キーを作成します。

概要: 記事の冒頭で説明した主キーを作成する 2 つの方法のうち、2 番目の方法は複合主キーを作成するときには使用できません。複合主キーは、作成と削除を同時に行う必要があります。

上記は、MySQL で複数の主キーが定義されているエラー メッセージに対する解決策です。123WORDPRESS.COM をお読みいただき、サポートしていただきありがとうございます。

以下もご興味があるかもしれません:
  • IDEA が MySQL に接続する際の問題と解決策
  • IDEA は MySQL への接続時にエラーを報告します。サーバーが無効なタイムゾーンを返します。タブに移動して serverTimezone プロパティを設定してください。
  • Springboot が MySQL に接続するときに発生するエラー「パスワードの使用: NO」の解決方法
  • Mysql データベースの日付と日時型でデフォルト値 0000-00-00 を設定するときに発生するエラー問題の詳細な説明
  • mysqlclient のインストール時に発生する「Microsoft Visual C++ 14.0 が必要です」というエラーを解決する
  • MySQL の絵文字テーブル ストレージのエラーに対処する方法 [エンコードを utf8mb4 に変更]
  • IDEA で MySQL にリンクするとエラー 08001 が発生し、接続に成功した後にテーブルが表示されない問題と解決策

<<:  React refsの詳細な紹介

>>:  Linuxがすべてのコマンドをサポートしていない問題の解決策

推薦する

docker で golang イメージに基づいて ssh サービスを構築する方法

以下は、docker の golang イメージに基づいて ssh サービスを構築するためのコードで...

Windows 10 に Linux サブシステムをインストールする 2 つの方法 (画像とテキスト付き)

Windows 10 は Linux サブシステムをサポートするようになり、面倒なデュアル システ...

ウィンドウ環境設定Mysql 5.7.21 windowx64.zip無料インストール版チュートリアル詳細説明

1. 公式サイトのmysqlダウンロードページからmysql-5.7.21-windowx64.zi...

VMware仮想マシンにdeepin20をインストールする最も完全で詳細なプロセス

仮想マシンソフトウェア: VMware Workstationイメージ: deepin-deskto...

Linux で PCIe のバージョンと速度を確認する方法

PCIE には 4 つの異なる仕様があります。下の図でそのうちの 2 つを見てみましょう。マザーボー...

CSSは、マウスを線の上に置くと線全体の色を変える効果を実現します。

まとめ:以下のように、CSS で指定した行にマウスを置いたときに行全体の色を変更する方法を示します。...

bash のスクリプトデバッグメカニズムの詳細な説明

スクリプトをデバッグモードで実行するbash -x <script> を使用すると、スク...

MySQL B-Tree インデックスの簡単な分析

Bツリーインデックス異なるストレージ エンジンでは、異なるストレージ構造を使用する場合もあります。た...

HTML iframe と frameset の違い_PowerNode Java Academy

導入1.<iframe> タグ: iframe は、ページ内に内部フレームを生成するイン...

nginx/apache 静的リソースのクロスドメインアクセスの問題を解決する詳細な説明

1. Apache 静的リソースのクロスドメイン アクセスApache設定ファイルhttpd.con...

位置のいくつかの巧妙な応用の詳細な説明:sticky スティッキーポジショニング

背景: position:sticky はスティッキー配置とも呼ばれます。スティッキー配置の要素は、...

ローカル yum ソースの設定、国内 yum ソースの設定、epel ソースの設定を行う Linux の手順

1. ローカルyumソースを設定する1. ISOイメージをマウントする マウント -o loop /...

VirtualBox での CentOS 8.1 仮想マシンのインストールを最小限に抑える詳細なチュートリアル

1. 関連ツールと画像をダウンロードするダウンロードリンクバーチャルボックス: https://do...

ElementUIはドロップダウンオプションと複数選択ボックスのサンプルコードを実装します

目次ドロップダウン複数選択ボックスアップグレード - すべてのオプションを追加改訂と改善を求める製品...

HTML ハイパーリンク内の中国語文字化けの分析と解決

Vm 内のハイパーリンク URL は、Get 要求のパラメータとして中国語と連結する必要があります。...