2013-02-16 71 views
2

我最近發現自己使用一些相當冗長的名字來開發一個涉及的表和視圖,這讓我想知道是否有可能爲對象創建客戶端/數據庫/服務器級別別名。是否有可能創建永久的對象別名

說例如我有一個視圖名爲 dbo.vAlphaBetaGammaDelta。有沒有一種方法(帶或不帶Intellisense)創建一個名爲 dbo.vABGD的引用?

如果沒有,如果/當表格模式更改時,是否有創建視圖或單個表的視圖以外的維護需求?

我要指出的是,這些別名/意見將不會被用於其他目的的使用,但對於緩解和一天到一天的故障排除過程中預防腕管和鑽研的xD

+0

使用較少描述性的別名聽起來適得其反。獲取TSQL完成工具安裝.... – 2013-02-16 03:20:42

+0

你的意思是Intellisense?這是我們在談論桌子時所指的別名,所以它的描述性不是那麼簡單。再次 - 只是爲了鑽研。 – 2013-02-16 03:26:12

回答

2

的SQL Server允許創建的同義詞。這似乎是你在找什麼:http://msdn.microsoft.com/en-us/library/ms177544.aspx

然而,正如@MitchWheat提到。這似乎是走錯了方向。有幾個相當不錯的SSMS插件可用於自動完成長對象名稱(例如SQL提示)。順便說一句,那些產品有同義詞的困難...

+1

同義詞正是我所期待的,謝謝!你的意思是錯誤,只會導致額外的不必要的東西? – 2013-02-16 03:35:51

+0

當引用四個部分名稱中的對象時,您的SYNONYM降額外爆炸聲:http://blog.sqlauthority.com/2008/01/07/sql-server-2005-introduction-and-explanation-to-synonym-helpful-t -sql-feature-for-developer/ – 2013-02-16 03:50:09

+0

@ZokWobblefotz:是的,這就是我的意思是「錯誤」。然而Pinal提到的抽象層對於同義詞來說是一個很好的用例。 – 2013-02-17 15:34:40

0

有很多情況下,你想要有同義詞。 讓我只說一個開始: 您有一個明確定義的表的假設名稱:GlobalStatisticalRecord。 SQL和其他地方的數百行代碼和對象(鍵,索引等)都是指這個表名。 經過5年的使用,不僅在技術人員中,而且在商業用戶中,縮寫GSR已經習以爲常。因此,再次強調,GSR現在比GlobalStatisticalRecord更具辨識性。然而,對於進入技術團隊的新人來說,最好將名稱GlobalStatisticalRecord作爲表名稱,因爲它很好地描述了表格的全部內容。現在,當編寫一個快速的adhoc查詢 - 並且這可能不是來自您所選擇的所有智能感知功能的工具 - 那麼這些別名確實可以節省您的時間(以及早上2點的「生活」時間你瘋狂地試圖診斷生產問題)。 請,如果你從來沒有遇到過這樣的情況,只是不要認爲沒有。 我強調adhoc形容詞,因爲我同意永久性查詢(存儲過程等),由於您指出的原因,建議使用完整的表名稱。

相關問題