Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。
Q&A
2回答
4880閲覧
退会済みユーザー
総合スコア0
0グッド
0クリップ
投稿2017/02/24 21:26
0
あるユーザで作成したインデックスは他のユーザでも使用されるのでしょうか? それとも、ユーザごとにテーブルのインデックスは全く別のものになるのでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答2件
当然、適切な SQL であれば、どのユーザーが呼び出したものであれ、インデックスを利用した検索が行われます。 Oracle ではユーザ=スキーマなので、ユーザが違う=スキーマが違う、となりますから、「同じテーブル名だけど別スキーマ」であれば、意図したのとは異なるインデックスが使われたり、あるいは効かない場合もありますが、それはユーザが違うからではなく、そもそも別のテーブルである(ゆえにインデックスも違う)からです。 あるユーザが(適切な権限設定をしてあれば)自分のスキーマではない別のスキーマ上の表を検索することもできますから、その場合では「検索対象の表に張られているインデックス」が使われます。
投稿2017/02/25 04:02
総合スコア13703
回答へのコメント
2017/02/25 12:44
他ユーザーでCREATE TABLE, CREATE INDEX されたものでもテーブルのSELECT権があれば、索引が使われているかどうかは EXPLAIN PLAN を使って実行計画を取得する で調べることができます。
リファレンス ALL_TABLES リファレンス ALL_INDEXES も参考に。
投稿2017/02/28 02:16
総合スコア16415
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
まだベストアンサーが選ばれていません
アカウントをお持ちの方はログイン
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.48%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
Oracleでのユーザごとのインデックスについて
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/02/25 12:44