IntelliSense が利用できない場合

IntelliSense オプションが正しく機能しないことがあります。

IntelliSense が影響を受ける状況

次の場合に IntelliSense の動作が影響を受ける可能性があります。

  • カーソルよりも上にコード エラーがある場合

    挿入ポイントの位置よりも上に不完全なステートメントや他のコーディング エラーがあると、IntelliSense は、コードの要素を解析できないので正しく機能しないことがあります。IntelliSense を再び有効にするために、該当するコードをコメント化できます。

  • コードのコメント内に挿入ポイントがある場合

    挿入ポイントがソース ファイルのコメント内にある場合は、IntelliSense オプションを使用できません。

  • 文字列リテラル内に挿入ポイントがある場合

    挿入ポイントが引用符で囲んだ文字列リテラル内にある場合は、IntelliSense オプションを使用できません。以下はその例です。

    WHERE FirstName LIKE 'Patri%|'

  • 自動オプションがオフになっている場合

    既定では、IntelliSense の多くの機能が自動的に実行されるようになっていますが、各機能を無効にすることもできます。

    自動入力候補機能を無効にしている場合でも、IntelliSense 機能を使用することは可能です。詳細については、「IntelliSense オプションを変更する方法」を参照してください。

データベース エンジン クエリの IntelliSense

データベース エンジン クエリ エディタに関しては、次の点に注意してください。

  • データベース エンジン クエリ エディタの IntelliSense 機能では、すべての Transact-SQL 構文要素がサポートされているわけではありません。パラメータのヘルプでは、拡張ストアド プロシージャなど、一部のオブジェクトのパラメータがサポートされていません。詳細については、「IntelliSense でサポートされている Transact-SQL 構文」を参照してください。

  • Intellisense は、データベース エンジンのクエリ エディタが SQL Server 2008データベース エンジンのインスタンスに接続されている場合にのみ使用できます。Intellisense は、クエリ エディタが以前のバージョンのデータベース エンジンのインスタンスに接続されているときは使用できません。

  • SQLCMD モードを有効にすると、データベース エンジン クエリ エディタの IntelliSense が無効になります。

  • IntelliSense 機能は、現在のエディタ ウィンドウがデータベースに接続された後に別の接続で作成されたデータベース オブジェクトには対応していません。エディタ ウィンドウのオブジェクトのキャッシュを更新するには、次の 3 つのメカニズムのいずれかを選択します。

  • [編集] メニューの [IntelliSense] をポイントし、[ローカル キャッシュの更新] をクリックします。

  • Ctrl キーと Shift キーを押しながら R キーを押します。

  • 現在のエディタ ウィンドウをデータベース エンジンのインスタンスから切断して再接続します。

  • 権限のないデータベース オブジェクトは入力候補一覧に表示されません。IntelliSense は、権限のあるオブジェクトへの参照にフラグを付けます。たとえば、別のユーザーが記述したスクリプトを開いた場合、そのユーザーには権限があるものの自分には権限のないオブジェクトへの参照には無効のフラグが付けられます。

  • SQL Server データベース エンジンのインスタンスへの接続が失われると、入力候補一覧が機能しなくなることがあります。インスタンスに再接続してください。

変更履歴

変更内容

[ローカル キャッシュの更新] メニューまたはそのショートカットを使用してオブジェクトの IntelliSense キャッシュを更新する手順を追加しました。

関連項目

その他の技術情報