No.2ベストアンサー
- 回答日時:
失礼ですが、概念・用語を理解しているでしょうか?
まず、mysqlというサーバープログラムがあります。これが、RDBMS (Relational DataBase Management System) です。このプログラムは、複数のスキーマ(MySQLでは、これがDatabaseと同じ意味です)を管理しています。それぞれのスキーマは、その中にテーブルを初めとするデータベースオブジェクトを保持しています。
結合は、テーブル間で行われます。DB(Database)間での結合ではありません。同じRDBMSが管理する異なるスキーマ(DB)上のテーブル同士は、テーブルをスキーマ名で修飾すれば、結合できます。
主キーは、関係データベースの概念です。テーブルの1行を特定できる1つ以上のカラムの集合を意味します。関係演算では、必須です。
SQLは、RDBMSとは言いつつ、主キーのないテーブルを作れます。ただ、テーブル作成時に主キーを宣言すると、RDBMSが主キーの重複を起きないようにしてくれます。
インデックスは、テーブルを高速に検索するためのデータ構造です。検索は速くなることが多いのですが、行の更新、削除ではインデックスも変更されますので、付け過ぎは全体としての効率を落とすかもしれません。またそれなりの余計な記憶領域を必要とします。
データの分布によっては、ほとんど効かないかもしれません。たとえば、性別のカラムにインデックスを張っても、取る値は2つです。こういうカラムへのインデックスは無意味です。
主キー制約(同じものが重複しない)を実現するために、ほとんどのRDBMS(そうでないのはあるんだろうか?)は、インデックスを勝手に作成します。これが、ないと主キーの重複チェックのために、テーブル全部を見ないといけないからです。
答えです。PRIMARY KEYを宣言したら、勝手にインデックスは作られます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- IT・エンジニアリング ドメイン駆動設計の値オブジェクトについて質問 1 2023/05/13 02:50
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) RemoveDuplicatesメソッドについて教えてください。 シート1にシート2から値をもってく 1 2023/02/28 22:43
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Excel(エクセル) VBAのエラーが直せません 4 2023/06/12 22:10
- Excel(エクセル) マクロを簡潔にしたい 6 2022/09/16 10:37
- Excel(エクセル) 列の複数ある空白セルを飛ばして、セルに並べて表示したい 3 2023/02/12 16:49
- その他(Microsoft Office) ピボットテーブルへの集計フィールド挿入 1 2023/02/26 11:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ビューにインデックスを設定で...
-
[ BETWEEN ] vs [ >= AND <= ]
-
主キーにインデックスは貼らな...
-
outlook2007 検索できないんです
-
投資信託を初めて購入しようと...
-
2つのインデックスと複合インデ...
-
mysql IN句に1データだけ指定...
-
サイトがいつまでたってもGoogl...
-
インデックスの再構築の意味っ...
-
テキスト項目255ケタのメリット...
-
【SQLServer】IS NULLのパフォ...
-
「マスタ」と「テーブル」の違...
-
ビューで引数を使いたい
-
accessのロック
-
Access VBA [リモートサーバー...
-
SELECT時の行ロックの必要性に...
-
accessテーブル作成クエリを実...
-
SI Object Browserのテーブルス...
-
Accessのリンクテーブルについて
-
2つのテーブルから条件に一致...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[ BETWEEN ] vs [ >= AND <= ]
-
主キーにインデックスは貼らな...
-
【SQLServer】IS NULLのパフォ...
-
インデックスの再構築の意味っ...
-
mysql IN句に1データだけ指定...
-
ビューにインデックスを設定で...
-
年と月が別カラムの場合のSQL
-
サーバ負荷を抑える大量データ...
-
outlook2007 検索できないんです
-
コクヨ タイトルブレーンでイ...
-
画像の赤丸で囲っている、角丸...
-
ホームページがGOOGLEにインデ...
-
Google検索はなぜ早い?
-
MS-DOS時代のデーターベ...
-
テキスト項目255ケタのメリット...
-
数学でunprimedとは何を意味し...
-
複数のDBでjoinする場合のindex...
-
『ラミネートインデックスシー...
-
SQLiteで... like を早くする
-
SQL関数とレスポンスについて
おすすめ情報