gpt4 book ai didi

sql - 使用同义词与 View 的优缺点是什么?

转载 作者:太空狗 更新时间:2023-10-30 01:38:33 25 4
gpt4 key购买 nike

这是一个通用的数据库设计问题 - 与简单 View 相比,在数据库开发中使用同义词有什么好处?在两者之间进行选择时要牢记哪些主要考虑因素?

示例 View :

CREATE VIEW Users AS
SELECT * FROM IdentitySystem.dbo.Users

和等效的同义词:

CREATE SYNONYM Users 
FOR IdentitySystem.dbo.LCTs

最佳答案

它们是不同的东西。同义词是对象的直接别名, View 是一个或多个表的构造。

使用 View 的一些原因:

  • 可能需要过滤、连接或以其他方式破坏结果集的结构和语义

  • 可能需要为已更改但具有您不想重新工作的依赖项的底层结构提供遗留支持。

  • 可以提供安全性,其中表的某些内容应该对一类用户可见,但不是全部。这可能涉及删除包含敏感信息的列或过滤掉部分记录。

  • 可能希望将一些业务逻辑封装在用户可以出于报告目的访问的表单中。

  • 您可能希望统一来自多个来源的数据。

...还有更多。

使用同义词的原因:

  • 您可能希望为另一个数据库中的对象设置别名,而您不能(或不想)对特定数据库的引用进行硬编码。

  • 您可能希望重定向到随时间变化的源,例如存档表。

  • 您想以不影响查询优化器的方式为某些内容添加别名。

...还有更多。

关于sql - 使用同义词与 View 的优缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/869073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com