在SSMS介面中每個Database底下都有一個同義字(Synonym)的項目
大多數人基本上都直接忽略掉,因為在正常資料庫設計上比較不會需要使用到
但當遇上開發系統過程,資料庫結構尚未設計完善時
倒是可以利用Synonym來處理物件因重新命名時所造成的困擾
SYNONYM 同義字
顧名思義就是對資料庫中的物件設定等同於該物件功能的命名
簡單來說就是給予物件另一個對應的名稱
在系統開發或撰寫預設程序(Stored Procedure)直接使用同義字
等之後原本物件名稱有所更動時,只要重新定義同義字的對應關係
就可以省去大幅度的修改物件名稱的動作
語法
CREATE SYNONYM [資料結構].[新物件名稱] FOR [伺服器].[資料庫].[資料結構].[原物件名稱]
DROP SYNONYM [資料結構].[新物件名稱]
(紅字部分可以省略)
P.S. SYNONYM沒有ALTER語法,只能刪除後重新建置
適用物件
- Tables
- Views
- Stored procedures
- Functions
注意到這邊,同義字無法對資料庫或是資料結構使用
給予同義字可以直接對他做新增、刪除、修改、查詢等動作,同原本的物件進行操作
範例
CREATE SYNONYM dbo.NewOrders FOR Northwind.dbo.Orders
SELECT OrderId FROM dbo.NewOrders
對Northwind資料庫中的Orders資料表做同義字-->NewOrders(可跨不同資料庫)
而可對NewOrders做查詢的動作
參考
http://msdn.microsoft.com/zh-tw/library/ms177544.aspx
http://msdn.microsoft.com/zh-tw/library/ms174996.aspx
留言列表