是否可以将内存中的表添加到数据库关系图中



我有一个带有内存表的SQL Server 2016数据库。我想使用数据库图表功能来创建匹配的图形。

运行 SSMS 18.3.1。当我开始一个新关系图时,下拉列表中不会显示内存中的表。有没有其他方法可以将它们放在图表上?

注意:在官方文档中,这些表称为内存优化表。 请参阅内存优化表简介

不能在数据库关系图中添加OLTP对象,即使在 SQL Server 2019 中也不能。

我认为应该有一种方法可以修改[definition][dbo].[sysdiagrams]列,但它是未知文件类型的 HexString。(我尝试了很多格式,但它显然是内部Microsoft类型(

不幸的是,没有提及这是一个不支持的功能。(我向此页面发送评论(

数据库关系图不支持 OLTP。您无权访问关系图中的内存中表,因为该关系图无法将内存中表的本质识别为表,实际上 SQL Server 为每个创建的内存优化表类型生成一个 DLL,其中包含所需的函数 用于访问索引并从相关的内存优化表变量中检索数据

如果运行 SQL 事件探查器工具,你将看到为内存优化表返回的表数据结果集中有一个列名 IsMemoryOptimized 。我认为由于数据库关系图功能较旧(自 mssql 2000 以来(并且不定期更新,因此它不支持查看较新的内存优化表。

更多信息在这里: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/71aa7b6e-c281-4417-8149-2eb6f3830110/sql-server-2016-memory-optimized-tables-not-visible-in-database-diagrams?forum=sqlinmemory

最新更新