こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ビューにインデックスを設定できませんか?

SQL Server 2005 EXPRESS を使用しています。
トランザクションのテーブルにマスタを結合して表示するビューを作成しました。
実際に利用する時はトランザクションテーブルの主キーを検索に多用すると予想されるので、該当のフィールドにインデックスを設定したいのですが…

Management Studio でインデックスを設定しようとするとエラーになります。

エラーメッセージは

インデックス '' の作成に失敗しました。 (Microsoft.SqlServer.Express.Smo)
------------------------------
ADDITIONAL INFORMATION:
Transact-SQL ステートメントまたはバッチの実行中に例外が発生しました。 (Microsoft.SqlServer.Express.ConnectionInfo)
------------------------------
ビュー 'View' に インデックス を作成できません。ビューにはスキーマがバインドされていません。 (Microsoft SQL Server, Error: 1939)

となっています。まさにメッセージのとおりだとは思うのですが
「ビューにスキーマをバインドする」方法がわかりません。

どなたかご教授いただければ助かります。

よろしくお願いいたします。

投稿日時 - 2009-06-23 15:15:59

QNo.5068217

困ってます

質問者が選んだベストアンサー

SCHEMABINDINGオプションがあるようですね。以下が参考になるでしょうか。
http://msdn.microsoft.com/ja-jp/library/ms187956(SQL.90).aspx
http://msdn.microsoft.com/ja-jp/library/ms173846(SQL.90).aspx

投稿日時 - 2009-06-23 15:40:11

お礼

アドバイス、ありがとうございます。使っている環境で試してみます。

投稿日時 - 2009-06-23 16:04:54

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(2)

ANo.2

インデックス付きビューの作成
http://technet.microsoft.com/ja-jp/library/ms191432(SQL.90).aspx

上記の「必要条件」を参照してください。

投稿日時 - 2009-06-23 17:22:45

お礼

ポイントは回答をいただいた順番でつけさせていただきましたが、こちらのサイトも大変参考になりました。ありがとうございました。

投稿日時 - 2009-06-24 11:15:55

-広告-
-広告-
-広告-
-広告-