Intellisense

Azure Data Studio - Intellisense 不檢測表,但查詢工作。我該如何解決?

  • August 23, 2021

好的。所以我正在開闢一些新天地並嘗試進入 Azure Data Studio。我遇到了智能感知問題,這似乎是 Azure Data Studio 的一個錯誤,但我不確定。

我對基本查詢有疑問。在這個例子中,外鍵、select 語句和 insert 語句都告訴我 Chocolate_category 不存在,它說它是一個無效的對象名,或者外鍵是無效的,因為表名無效,等等。

簡單地說,ADS 在確實存在的表上出錯。在這種情況下,即使智能感知認為表名無效,我也能夠插入數據。然後我可以從表中進行選擇。

為什麼會發生這種情況,我該如何解決?Control-Shift-R 無法刷新智能感知。添加 dbo。表名的前綴也不起作用。

正如您在此圖像中清楚地看到的那樣,該表存在於我所在的數據庫中。該查詢顯示一個錯誤,但是執行它會產生一個結果。如果我的程式碼適用於表名,那麼為什麼會出錯?

我發現可以通過這個錯誤繼續,但是告訴我有些東西壞了但沒有壞,這讓我很煩。

在此處輸入圖像描述

刷新 IntelliSense 記憶體的CTRL+SHIFT+R快捷方式在 SSMS 中是正確的快捷方式,但在 ADS 中不起作用。

要在 ADS 中執行此操作,請按下CTRL+SHIFT+P以調出命令面板,然後鍵入intellisense。下拉列表將過濾,因此您可以Refresh IntelliSense Cache從列出的選項中進行選擇。(箭頭指向它並按 Enter 或用滑鼠選擇。

您可以將自己的鍵盤快捷鍵添加到 ADS,以便熟悉的CTRL+SHIFT+R組合在您的機器上為您工作。

你必須讓 gui 知道 Schocolade_Factory 是什麼。

作為數據庫,不會在它擁有的所有數據庫中搜尋,每次擊鍵都需要一些時間

所以如果你寫

  SELECT * FROM dbo.Schocolade_Factory

另一種可能性

就是在表前使用數據庫名

SELECT * FROM [SchocladeSales].[Schocolade_Factory]

在第一種情況下,您告訴 gui,Schocolade_Factory 是什麼以及它可以在哪裡找到列名等資訊

引用自:https://dba.stackexchange.com/questions/298402