まずはコードを見てみましょう: ALTER TABLE reportblockdetail ADD KEY taskcode (タスクコード) ALTER TABLE reportblockdetail DROP KEY taskcode まあ、ここがまさに混乱するところです。 MySQL を使用する場合、ほとんどの場合、同様の効果を示すため、この問題に注意を払わないかもしれませんが、それでも同等にすることはできません (少なくとも理論的には)。 インデックスとキーの違いは、開始点が異なることにあります。インデックスはテーブルの検索と操作の速度を維持する役割を担い、キーはテーブルの整合性を維持する役割を担います。 このような混乱が生じた場合は、おそらく MySQL の奇妙な現象が原因です。
不思議ですよね? 2つは別物ですが、作成されると互いにくっついています。 なぜそうなるのでしょうか?理由は次の通りです:
最後にまとめます。
理論上、MySQL のキーとインデックスは同一視できず、同じものではありませんが、実際の使用では、基本的に違いはありません。 コンテンツ拡張子: キーと主キーの違い テーブルwh_logrecordを作成します( logrecord_id int(11) NOT NULL auto_increment, user_name varchar(100) デフォルト NULL、 operation_time datetime デフォルト NULL、 logrecord_operation varchar(100) デフォルト NULL、 主キー (logrecord_id)、 キー wh_logrecord_user_name (ユーザー名) ) KEYとINDEXの違い 注: この部分についてはまだ混乱しています。 MySQL のインデックスとキーの違い キーは、リレーショナル モデル理論の一部であるキー値です。たとえば、データの整合性チェックや一意性制約に使用される主キーと外部キーがあります。インデックスは実装レベルにあります。たとえば、テーブル内の任意の列にインデックスを作成できます。その後、インデックスが作成された列が SQL ステートメントの Where 条件にある場合、データをすばやく見つけて取得できます。ユニーク インデックスについては、インデックスの一種にすぎません。ユニーク インデックスの作成は、この列のデータが重複できないことを意味します。MySQL では、ユニーク インデックス タイプのインデックスに対してさらに特別な最適化を行うことができると思います。 したがって、テーブルを設計するときには、キーはモデル レベルのみでよく、クエリの最適化が必要な場合は、関連する列のインデックスを作成できます。 さらに、MySQL では、主キー列に対して、MySQL が自動的に一意のインデックスを作成するため、再度インデックスを作成する必要はありません。 上記はMySQLのキーとインデックスの違いについての詳しい内容です。MySQLのキーとインデックスの違いについてさらに詳しく知りたい方は、123WORDPRESS.COMの他の関連記事もご覧ください。 以下もご興味があるかもしれません:
|
<<: JavaScript 関数呼び出し、適用、バインド メソッドのケース スタディ
>>: Dockerにelasticsearchとkibanaをインストールする方法
サーバーにはNginx、データベースサポートにはMongo、Python言語のWebフレームワークに...
この記事の例では、VUEコンポーネントに基づいて都市リストエフェクトを実装するための具体的なコードを...
1. リストシンボルを設定するlist-style-type: attribute; //リストの...
Vue+ElementUI Treeの使い方は参考までに。具体的な内容は以下のとおりです。 フロント...
SVG (Scalable Vector Graphics)は、XML 構文に基づいた画像形式です。...
序文ページの HTML 構造にネストされたボックスが多数含まれている場合、ページに複数の垂直スクロー...
データをオペレーションにエクスポートする場合、フィールドの結合は避けられません。MySQL でこれが...
この記事では、例を使用して、MySQL トリガーの原理と使用方法を説明します。ご参考までに、詳細は以...
ローカル開発では、直接アクセスできない静的ファイル リソースのデバッグが必要になる場合があります。こ...
CSS3 の角丸や影の効果を使ったページを作りたいのですが、IE ブラウザでは対応していません。こ...
1. Dockerコンテナ間の相互接続Docker は現在、軽量の仮想化ソリューションとなっています...
Linux コンピュータには 2 つの時間があります。1 つはハードウェア時間 (BIOS に記録さ...
目次1. 父と息子のコミュニケーション1.1 親コンポーネント --> 子コンポーネント1.2...
この記事では、MacでのMySQLインストールチュートリアルを参考までに紹介します。具体的な内容は次...
MySQLデーモンの起動に失敗したエラーの解決方法数日前、公開されたウェブサイトはこれらのアクティビ...