Sql server 我应该创建使用数据库图表所需的支持对象吗?

Sql server 我应该创建使用数据库图表所需的支持对象吗?,sql-server,sql-server-2008-r2,Sql Server,Sql Server 2008 R2,当我在SQL Server Management Studio 2008 R2中单击数据库关系图时,一些数据库会告诉我以下消息: 此数据库没有使用数据库图表所需的一个或多个支持对象。您想创建它们吗 这样做是否有任何顾虑(即安全性?)?数据库不是我的如果这些数据库不是你的,我建议不要做任何模式更改。这可能是一个非常关键的问题 例如:通过向表中添加外键,可能会在没有人知道原因的情况下导致应用程序出现大量错误和bug 任何修改或添加新内容都是真实的,并立即生效。根据注释,它将[dbo].[sysdia

当我在SQL Server Management Studio 2008 R2中单击数据库关系图时,一些数据库会告诉我以下消息:

此数据库没有使用数据库图表所需的一个或多个支持对象。您想创建它们吗


这样做是否有任何顾虑(即安全性?)?数据库不是我的

如果这些数据库不是你的,我建议不要做任何模式更改。这可能是一个非常关键的问题

例如:通过向表中添加外键,可能会在没有人知道原因的情况下导致应用程序出现大量错误和bug


任何修改或添加新内容都是真实的,并立即生效。

根据注释,它将[dbo].[sysdiagrams]添加到数据库的“系统表”节点。下面的对象也将添加到数据库()

请权衡后果。这是开发数据库还是生产数据库?如果使用当前的部署模型添加这些对象,它们是否会部署到更高的环境中?数据库是否位于安全位置?数据库是否包含敏感信息

对象:

  • sp_升级图

  • sp_帮助图

  • sp_帮助图定义

  • sp_创建图

  • 重新命名地图

  • sp_图

  • sp_图

  • fn_diagramobjects(有问题)

  • 系统图dt_属性(?)


只要创建一个表,它就会被解决。数据库中没有对象(这意味着数据库是空的)。

您好,Hoppe。我认为安全问题有点主观,但会告诉您创建了什么对象。也许你现在知道了它的意图,就可以做出判断了。八年前,我记录了一个建议,允许用一种更简单的方法删除图表组件——因此,即使你确实在一个你无法控制的数据库中创建了它们,你也有能力清理你的轨迹。不幸的是,.知道“撤消”操作很困难,是不执行该操作的一个很好的动机@AaronBertrandWe'll我不会称之为“困难”,但它可以简单一点。它在数据库的“系统表”节点中添加了[dbo].[sysdiagrams],类似地,还有一些sp--diagram系统存储过程。不过,我的db上似乎没有dbo.fn_diagramobjects函数。请参阅:如何从SQL Server中删除图表支持对象-1这在很多级别上都是不正确的,它没有向表中添加任何内容,只是一些过程:@Hoppe;如果有帮助,请在答案上做标记,如果没有帮助,请发表评论。