利用同义词简化SQL Server 2005开发
2006-08-07 09:15:01 来源:WEB开发网核心提示: 例如,在AdventureWorks示例数据库中,利用同义词简化SQL Server 2005开发(2),你可以以下列方式创建一个同义词:CREATE SYNONYM ProdCatFOR AdventureWorks.Production.ProductCategory之后,你可以继续使
例如,在AdventureWorks示例数据库中,你可以以下列方式创建一个同义词:
CREATE SYNONYM ProdCat
FOR AdventureWorks.Production.ProductCategory
之后,你可以继续使用在SQL语句中的同义词了。例如:
SELECT * FROM ProdCat
图1显示出相应的结果:
当你使用完一个同义词后,你可以使用DROP SYNONYM语句来去掉它,它具有你期望的语法格式:
DROP SYNONYM [schema_name.]synonym_name
三. 几点细节
当然,对于同义词的使用上也存在一些限制。对于初学者来说,你不能为任何东西都创建一个同义词。SQL Server 2005比以前引入了更多的对象,但是同义词仅限于应用于核心集的最有用的一些对象中:
· 表
· 视图
· 存储过程
· CLR存储过程
· CLR函数
· 复制过滤过程
· 扩展存储过程
· SQL标量,表值以及内联表值函数
关于在什么情况下使用同义词还存在一些限制。一般来说,你可以在下面这些T-SQL语句中使用一个同义词:
· SELECT
· sub-selects
· UPDATE
· INSERT
· DELETE
· EXECUTE
如果你仔细考虑一下,那么第二个表不应该太奇怪:它包含了最常用的where语句。注意,你不能在一个DDL语句中参考一个同义词。如果你想使用ALTER TABLE来改变ProductCategory表中的内容,那么,你需要使用基表而不是使用ProdCat同义词。
更多精彩
赞助商链接