有没有办法在数据库图表中直观地显示数据库视图?

Is there a way to visually display a database view in a database diagram?

类似于this question,有没有办法在数据库图表中直观地显示数据库视图?

是的,虽然没有使用 SSMS 的数据库图表。

我的解决方案是 Microsoft BI 的数据源视图 (DSV)。这需要您安装 Microsoft 的 BIDS(商业智能开发工作室),这是 SQL Server Standard(或更高版本)的一个组件。

2005 年到 2016 年的 BIDS 应该都可以工作并提供相同的基本功能。

或者,如果您想访问工具集的免费版本,您可以下载并安装 SQL Server Express with Advanced Services(基本上 SQL Express with Reporting Services 添加),虽然我尚未使用此版本进行验证。

  1. 安装 BIDS 后,启动它(或 Visual Studio,如果您安装了更完整的版本)
  2. 转到文件 > 新建项目
  3. 在“新建项目”对话框中的“模板”下,展开商业智能并选择一个项目。(我相信任何 BI 项目类型都可以。如果您没有看到任何 BI项目,那么您很可能没有安装 BIDS,或者至少没有安装该版本的 Visual Studio)。
  4. 为该项目在您的计算机上提供一个位置。
  5. 单击“确定” 创建 Visual Studio 和 BI 项目。
  6. 在“项目资源管理器”窗格中,右键单击“数据源”文件夹并select新建数据源。按照数据源 "wizard" 创建到所需数据源的连接。在 2014(和其他?)版本的 BIDS 中,存在一个关于您希望 Analysis Services 用于连接到数据源的安全凭证的问题。如果您只想创建一个仅用于图表的 DSV,那么您在此处 select 并不重要。
  7. 右键单击数据源视图文件夹并选择新建数据源视图。数据源视图向导启动。 使用向导,使用向左和向右箭头将您希望在数据源视图中看到的 table 和视图添加到包含的对象窗格。
  8. 单击“下一步” 完成 table/view 导入并为您的 DSV 命名
  9. 单击“完成” 启动导入并查看您的初始图表。 您现在有一个包含 table 和视图的数据库图表。

Here's a DSV of Microsoft's AdventureWorks2008 OLTP database。此图显示了一个示例,说明可以使用 DSV 中的 SQL 视图执行的操作。在其中,我将 Employee table 替换为存在于数据库中的 vEmployee View(给它一个友好的名称 'Employee'),并添加了反映 [=64 的逻辑主键和外键关系=] 的基础物理 table.

请注意,在 DSV 中所做的所有更改都是合乎逻辑的,因此与 DSV 文件本身隔离,不会直接影响数据库。