プロが教えるわが家の防犯対策術!

indexキーとprimary keyについてですが、違いというのは、NULLが許可されるか、されないかの違いでしょうか?

データベースから検索する際に、indexキーがある方が検索スピードが速いということですが、あるHPに《PRIMARY KEY が宣言されたカラムは自動で Index Key と Unique Key が適応されます》とありました。
ですので、検索スピードを上げるには、PRIMARY KEYを設定すれば、indexキーが設定されたのと同じ事になるのでしょうか?

A 回答 (2件)

単純な違いはというと、Primaryキーは一意性があり重複が許されないものです。

よってそのテーブルの検索キーワードになりますから通常Indexが張られます。

Uniqueは一意性を意味します。
なので Primaryキー = Uniqueキー + Indexキー ですね。

検索スピードを上げるためには条件となる項目がPrimaryかIndexであれば早くはなりますが、Primaryはむしろテーブル設計に拠るところが大きくて、一般的に用いられるのはIndexです。
また、条件全ての項目にIndexを張る必要はありません。
条件となる項目にIndexがあり、条件文の書き方(条件文の並び順とか)によっては少ないIndexで済みます。
たくさんIndexを張るとDBが大きくなってしまいますので。
    • good
    • 1
この回答へのお礼

ありがとうございます。
とても詳しく説明していただき、自分なりに多少理解できたと思います。もう少し勉強する必要があるかと思いますが・・・。

本当にありがとうございました。

お礼日時:2007/03/13 21:04

プライマリの用途としては親テーブルに子テーブルを結合するときの


キーとするためのもの、もしくは特定のレコードを端的に確定させるための
検索キーという認識の方がわかりやすいかもしれませんね。
その用途から一意性を保証するためのuniqueと、検索性をあげるための
indexがついているわけです。
「正規化」について学習すれば理解度が深まるかもしれません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!