【问题标题】:How do I move diagrams between SQL Server databases?如何在 SQL Server 数据库之间移动图表?
【发布时间】:2009-05-13 13:45:00
【问题描述】:

我正在尝试将数据库从托管服务器移动到我自己的 SQLExpress 实例。我使用数据库发布向导来创建脚本......但图表没有被传输。

然后,我发现并遵循了该站点上另一个答案的建议,该建议让我将数据导入/导出到 sysdiagrams 表。

当我这样做时,我会看到 Diagrams 文件夹中的所有图表。但是,当我尝试打开一个表时,我会看到每个表的轮廓,然后会弹出一条错误消息:

“表已从图表中删除,因为这些表的权限已被删除或这些表已被删除。”

当我从弹出窗口中退出时,所有表格都从图表中删除(除了作为一个图表一部分的几个 aspnet_xyz 成员表)。

您知道如何在不收到此消息的情况下传输图表吗?

【问题讨论】:

    标签: sql-server publishing diagrams import


    【解决方案1】:

    您需要删除图表并在右键菜单中使用“新建数据库图表”创建一个新图表并添加您需要的表格,最后保存。

    【讨论】:

      【解决方案2】:

      最简单的方法是创建整个数据库的备份并将其还原到您的 Express 数据库。您收到错误是因为图表不是简单的绘图 - 它们只是一些元数据并且它们依赖于它们显示的表格 - 您需要图表显示的表格。如果您不想修改图表,只需将其导出为图像即可。

      【讨论】:

      • 其实我需要修改图表。
      • 而且,我无法使用备份,因为我从共享主机帐户 SQL Server 中提取。我仅有的工具是导入/导出向导和通过 SQL Server Management Studio 或 VS 2008 Standard 的数据库发布向导。
      【解决方案3】:

      我以前见过类似的东西,不太一样,但也许它足够接近适用于你。

      您最初遇到的问题很可能与用户权限以某种方式绑定到旧服务器有关。

      请参阅http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=120849&SiteID=1 和 这个:http://msdn2.microsoft.com/en-us/library/ms143684.aspx

      • 您需要停止“SQL Server (SQLEXPRESS)”服务。

      • 然后删除“\Documents and Settings\Username\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\SQLEXPRESS”文件夹。

      • 重新启动 SQL Server。

      • 重新启动 Visual Studio。

      希望对你有帮助。

      【讨论】:

      • 我明确按照您的指示进行操作,但问题仍然存在。我希望我以后不需要那个文件夹:)
      【解决方案4】:

      当我使用数据库发布向导重新编写整个数据库的脚本时,这个问题就停止了……这次我指定了“仅模式”而不是“模式和数据”。完成此操作后,我能够使用导入/导出向导成功导入和打开图表。

      【讨论】:

        猜你喜欢
        • 2011-04-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-31
        • 2010-10-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多