疑難排解 Transact-SQL IntelliSense

在某些情況下,IntelliSense 選項的運作可能會不符合您的預期。

影響 IntelliSense 的條件

下列條件可能會影響 IntelliSense 的行為:

  • 游標上面有程式碼發生錯誤。

    如果在插入點位置之上,有不完整的陳述式或其他編碼錯誤,IntelliSense 可能無法剖析程式碼元素,因此,將無法運作。您可以將適當的程式碼註解化來重新啟用 IntelliSense。

  • 插入點位於程式碼註解內。

    如果插入點在來源檔案內的註解中,便無法使用 IntelliSense 選項。

  • 插入點位於字串常值內。

    如果插入點在括住字串常值的引號內,便無法使用 IntelliSense 選項,例如:

    WHERE FirstName LIKE 'Patri%|'

  • 已關閉自動選項。

    依預設,許多 IntelliSense 功能都會自動運作,但您可以停用任何功能。

    即使已停用自動完成陳述式的功能,您也可以使用 IntelliSense 功能。如需詳細資訊,請參閱<如何:修改 IntelliSense 選項>。

Database Engine 查詢 IntelliSense

下列問題適用於 SQL Server Database Engine 查詢編輯器:

  • Database Engine 查詢編輯器中的 IntelliSense 功能不支援所有 Transact-SQL 語法元素。參數說明不支援某些物件中的參數,例如擴充預存程序。如需詳細資訊,請參閱<IntelliSense 所支援的 Transact-SQL 語法>。

  • 只有當 Database Engine 查詢編輯器連接至 SQL Server 2008 Database Engine 的執行個體時,才能使用 IntelliSense。當查詢編輯器連接至舊版 Database Engine 時,則無法使用 IntelliSense。

  • 當 SQLCMD 模式開啟時,Database Engine 查詢編輯器中的 IntelliSense 卻關閉。

  • IntelliSense 功能不包含您的編輯器視窗連接到資料庫後,由另一個連接所建立的資料庫物件。如果完成清單等功能遺漏了在其他連接上加入的物件,您就可以選擇下列其中一種機制,為編輯器視窗重新整理物件的快取:

    • 選取 [編輯] 功能表,選取 [IntelliSense],再選取 [重新整理本機快取]

    • 使用 CTRL+Shift+R 鍵盤快速鍵。

    • 中斷您的編輯視器窗與 Database Engine 執行個體的連接,然後再重新連接。

  • 完成清單不包含您沒有權限的資料庫物件。IntelliSense 旗標會參考您沒有權限的物件。例如,如果您開啟其他使用者撰寫的指令碼,對於該使用者擁有權限而您沒有權限之物件的任何參考,都會標示為不正確。

  • 如果您喪失與 Database Engine 執行個體的連接,完成清單可能會停止運作。請重新連接到該執行個體。

請參閱

其他資源