今天發現了SQL2005的一個Bug,在建立同義詞連結Oracle的時候,使用下面的語句:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIml2ZuAjNhVTMlhzMzImMwQ2NjJmM1QWMkdTNlNTZllzMzYTYfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.gif)
CREATE SYNONYM [dbo].mis_vendor FOR [TEST]..[MIS].MIS_VENDOR
這樣建立好了同義詞,然後重新整理同義詞,可以看到我們的同義詞在ManegementStudio中了。這個時候檢視他的屬性可以看到架構變成了.MIS,這個明顯不對,我們使用“編寫同義詞腳本”->“Create到”->“新查詢編輯器視窗”可以看到他生成的代碼為:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIml2ZuAjNhVTMlhzMzImMwQ2NjJmM1QWMkdTNlNTZllzMzYTYfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.gif)
CREATE SYNONYM [dbo].[mis_vendor] FOR [TEST].[.MIS].[MIS_VENDOR]
相信大家都看出來了,他的确将MIS這個架構改成了.MIS 架構,方括号位置不對了!
如果我們再用“編寫同義詞腳本”生成的語句來寫同義詞就會出錯。是以建議大家以後寫同義詞最好使用SQL語句,不能太相信MangementStudio生成的代碼。
【本文章出自
部落格園深藍居,轉載請注明作者出處,如果您覺得部落客的文章對您有很大幫助,歡迎點選右側打賞按鈕對部落客進行打賞。】
打個招聘廣告,部落客正在主導開發一個跨鍊區塊鍊項目:
PalletOne,一直在招Go程式員,待遇豐厚,坐标北京酒仙橋,希望有識之士加入!