オラクルのインデックスについて教えてください。
ObjectBrowserというソフトでオラクルDBを管理しているのですが、
インデックスとCONSTRAINTというものの違いが良くわかりません。
現在ObjectBrowserで、インデックスを重複不可にすることで、そのテーブルの
主キーとしています。しかし、CONSTRAINTでPRIMARYKEYも設定できることに
最近気づきました。
ObjectBrowserに限らず、この違いについて教えてもらえないでしょうか?
どのような時にインデックスを使い、CONSTRAINTのPRIMARYKEYはこのような時に
使用するという風にお教えていただければ幸いです。
何分、データベース初心者なもので...
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
CONSTRAINTと言うのは、日本語で言うと制約で、INDEXは索引です。
制約には、主キー制約と一意制約があります(他にもありますけど省略します)。索引には、一意(重複不可)と重不可があります。
制約と索引の違いは、制約はデータの整合性を保証するもので、索引は検索スピードを向上させるものです。
主キー制約は、一意でありかつNOT NULLでかつ、一つの表に一つだけです。
一意制約は、一意であるのは同じですが、NULLも認めますし、一つの表にいくつも作ることが出来ます。
以上を踏まえて、データの検索スピードを向上するときにはインデックスを作成します。また、主キー制約というのは、一意キーのうち代表的なものの一つと考えるといいです。
No.1
- 回答日時:
レコードの一意にするためにつける主キーには、通常PRIMARYKEYの属性をつけます。
なお、これは1つのテーブルに1つしかつけることができません。主キーのほかにも一意となるフィールド(または組み合わせ)があるのであれば、ユニークインデックスをつける、というのが普通だと思います。
#MS-SQLServerの古いバージョンではユニークインデックスしかなかったらしいですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- 外国株 インデックス投資は、実は罠がある、バンガード社が、ウオール街の ランダムウオーカーとか、宣伝活動した 2 2023/01/06 22:08
- 外国株 分配金利 1 2022/09/05 00:40
- 会計ソフト・業務用ソフト タックインデックスシール 2 2023/04/28 05:14
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- SEO 検索エンジンにインデックスされない 3 2023/02/20 08:59
- その他(年金) 企業型確定拠出年金(DC年金)について教えてください。 昨年からDC年金を初めて2年目になります。 4 2023/08/21 09:55
- 不動産投資・投資信託 インデックス投資信託の信託報酬が低い物へのスイッチについて 5 2022/08/17 18:09
- その他(資産運用・投資) 資産運用についてご教授願います 現在25歳、あと3年後には結婚も考えています。 その上で、手取りから 7 2022/11/11 00:42
- 外国株 お金を守るための3カ条 1. 安く買って、高く売る 2. 商品はまだ割安 3. 初心者はインデックス 1 2023/01/06 23:12
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
インデックスについて
-
SQL Server Management Studio...
-
オートインクリメントについて
-
INDIRECT関数の代替方法は?
-
now()かCURRENT_TIMESTAMPか
-
一部のカラムでdistinctし全て...
-
UNIONする際、片方テーブルしか...
-
テーブルの列数を調べたい
-
AUTO_INCREMENTに0はダメ?
-
LIKEの右側にカラムを指定でき...
-
DBの定義のサイズを大きくし過...
-
SQLServerでNULLを挿入したいです
-
カラムとコラムの使い分け
-
MYSQLで全てのカラムから検索す...
-
SELECT文で、指定カラム以外の...
-
ROUND関数で、四捨五入ができな...
-
sql , insert で空行(全ての列...
-
SQLでカラムを追加し、条件に合...
-
select * での表示が崩れる?
-
type date にnullをinsert
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユニーク制約とユニークインデ...
-
MySQLのKey属性「MUL」について
-
SQL Server Management Studio...
-
複数カラム検索で、LIKE "%検索...
-
オートインクリメントについて
-
インデックスについて
-
データベースの設計について教...
-
削除ふらぐ
-
大量の項目を対象に効率的に検...
-
INDIRECT関数の代替方法は?
-
DBの定義のサイズを大きくし過...
-
テーブルの列数を調べたい
-
一部のカラムでdistinctし全て...
-
SELECT文で、指定カラム以外の...
-
LIKEの右側にカラムを指定でき...
-
SQLServerでNULLを挿入したいです
-
SQLです!!教えてください。
-
GREATESTで NULLをスルーする方...
-
now()かCURRENT_TIMESTAMPか
-
UNIONする際、片方テーブルしか...
おすすめ情報