SQL Server 提供 Multipart Names 來表示物件,您可以利用下列任何一種方式來存取資料庫物件:
one-part: | object_name |
two-part: | [schema_name].object_name |
three-part: | [database_name].[schema_name].object_name |
fout-part: | server_name .[database_name].[schema_name].object_name |
若是不想使用這麼長的名字,就可以使用同義字(SYNONYM)來為資料庫物件建立別名。
- CREATE SYNONYM :建立新的同義字。
同義字是具有下列用途的資料庫物件:
- 對在本機或遠端伺服器上的另一個資料庫物件 (稱為基底物件) 提供別名。
- 提供抽象層來保護用戶端應用程式,避免變更基底物件的名稱或位置。
範例:
--使用 MultiPart 表示法來查詢TABLE SELECT * FROM AdventureWorks2012.Production.Product --定義同義字 CREATE SYNONYM MyProduct FOR AdventureWorks2012.Production.Product --使用同義字來查詢TABLE SELECT * FROM MyProduct --使用同義字來更新TABLE UPDATE MyProduct SET Price=35 WHERE ProductID=2
已建立的同義字會列在下圖中。
查詢與刪除同義字:
--查詢同義字 SELECT * FROM sys.synonyms --刪除同義字 DROP SYNONYM MyProduct
變更實體物件名稱對同義字的影響
若將上例中的 Product 變更成 Products ,則會導至無效的連結。
沒有留言:
張貼留言