2013-07-02 70 views
0

我們最近將存儲過程和函數SQL文件的源代碼控制從SSSS集成的VSS移到Visual Studio 2012下的數據庫項目。這使我們能夠輕鬆地與TFS集成,這是我們的最終目標。如何在Visual Studio 2012數據庫項目下的intellisense中獲取表名?

在VSS和SSMS下,我們可以看到我們輸入的表名,函數名,視圖等。但在Visual Studio 2012中,我們注意到Intellisense不再知道這些特定的名稱。它確實知道數據庫名稱和角色,所以我們知道它在某個級別連接到數據庫。

有沒有簡單的方法來啓用此功能?我在網上看過,我沒有看到很多其他人遇到這個問題/情況。

回答

0

我找到了解決方案,雖然它並不完全是我們所希望的。我們希望VisualStudio能夠直接從數據庫獲取Schema信息。 (我們項目中的SQL文件僅用於視圖和存儲過程)。但是,當我們將表格和函數導入到項目中時,它使用該信息來構建智能感知。

好消息是我們找到了解決方案。壞消息是當我們的數據庫項目之外的進程改變了一些表(我們有一些這樣做),那麼我們必須記得在我們的項目中刷新這些模式,然後intellisense才能正常工作。

旁註:這裏是導入你的表,函數等快捷方式尤其是當你需要做上述目的的偶爾像我們將不得不做的刷新。

在開始之前,請確定要從數據庫中導出哪種對象:表,存儲過程,視圖或函數。在您想要導出的每個項目的數據庫項目下創建一個文件夾。

在SSMS中,打開數據庫服務器並右鍵單擊要使用的數據庫實例。回到任務 - >生成腳本...從那裏,選擇特定的數據庫對象。在這個例子中,想要提取JUST表。選擇「表」,並保留所有其他人未選中,然後單擊下一步。

在此屏幕上,選擇「單個文件每個對象」,併爲其指定數據庫項目下的「表」子文件夾的路徑。我更喜歡使用我的腳本DROP和CREATE而不是ALTER,因此單擊「高級」並將創建模式更改爲「DROP和CREATE」。

從這裏,只需「下一步」你的出路所有的對話框。繁榮!您現在有一系列可以包含在項目中的SQL文件。這些SQL文件將使智能感知功能正常工作,並且您可以使用啓動板生成所有數據庫對象,而無需從頭開始重新構建所有數據庫對象。

相關問題