次の方法で共有


IntelliSense のトラブルシューティング (SQL Server Management Studio)

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

IntelliSense が影響を受ける状況

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

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

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

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

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

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

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

    WHERE FirstName LIKE 'Patri%|'

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

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

    自動入力候補機能を無効にしている場合でも、IntelliSense 機能を使用することは可能です。 詳細については、「IntelliSense の構成 (SQL Server Management Studio)」を参照してください。

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

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

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

  • IntelliSense を利用できるのは、データベース エンジン クエリ エディターが、SQL Server 2008 以降のデータベース エンジンのインスタンスに接続されている場合に限られます。クエリ エディターが接続されているデータベース エンジンのバージョンがそれよりも古い場合は、IntelliSense を利用できません。

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

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

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

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

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

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

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