尝试创建数据库图表时 SSMS 崩溃

Mat*_*ino 3 ssms crash windows-10

我目前在 Windows 10 上使用最新版本的 SSMS (17.8.1),每次我尝试创建数据库图表时,它都会崩溃,但不会给我任何错误消息。我已经尝试重新安装SSMS,但问题仍然出现。

在此输入图像描述

Pau*_*aul 5

我发现如果您修改图表之外的内容,数据库图表工具似乎会崩溃。

在以下情况下,图表似乎保持稳定:

  • 数据库图表工具用于完成所有修改,从而在图表中保留流程的所有元数据。
  • 您的数据库结构在图表之外进行修改,然后每次都会删除并重新创建。
  • 整个数据库已经构建、完善,直到您满意并且感觉它不会改变。然后应该在测试后对数据库进行图表化。

无论使用哪种方法,这都是一个已知问题

为了确认,我在对 SQL 2016 Express 实例使用 SSMS 18.4 时遇到此问题。

当前状态 - 10/03/2021 - SSMS 版本 18.7.1

我对图表工具仍然有疑问。不过,它稍微稳定一些,如果您修改当前图表之外的任何内容,编辑器会抱怨元数据,并且您会丢失工作。事实上,我发现我还必须关闭并重新打开 SSMS 以确保我可以编辑或创建图表。因此,虽然 SSMS 仍然更加稳定(这是有争议的),但无论采取什么措施都不是解决方案。

继续使用 37.n 版本 - 希望届时它能得到修复!

来自小岛的进一步笔记 (12/03/2021)

让你的电脑进入睡眠状态似乎也存在问题,特别是当你通过 VPN 工作时。我发现,当您使计算机进入睡眠状态,然后尝试修改打开的图表时,编辑器会出现各种与元数据相关的错误(存在多个错误)。解决方法是重新连接 VPN,然后刷新 SSMS 中的数据库图表文件夹...

刷新数据库的数据库图部分

这应该允许您保存图表。

更新 - 29/03/2022

从版本 18.10 开始,我一直在更频繁地使用数据库图表,而且图表工具现在看起来确实更加一致。前面提到的大多数问题似乎都已经消失了(正如 @HannahVernon 在下面的评论中强调的那样),但我发现了一个奇怪的问题,这可能是由于一项服务,也可能是由于我的 PC 上的 GPU 驱动程序(如尚不清楚)。

由于数据库图工具主要用于此目的 - 以图表形式表示当前数据库,因此我喜欢将连接线与连接两端各自的列对齐。这使得图表更加完整,而不是您在某些图表中看到的通常令人费解的线条,从表格边界周围的随机位置投射到另一个位置。然而,当我将连接器拖到位时,如果我暂停而不移动超过大约 5 秒(目前任意数字,我没有对此进行计时),SSMS 就会崩溃。

要复制故障...

  • 创建两个表(A 和 B),一张具有主键,一张具有外键。
  • 创建数据库图表并将 A 的主键拖到 B 的外键上。
  • 好的,用于设置链接的对话框。
  • 通常,将通过从 A 到 B 的最直接路径创建链接。如果两个表位于同一平面上(例如,首次创建图表时),则该线将是直接的... 链接表 A -> B
  • 正如A.TestColPK应该链接到的那样B.TestFK,我通常会像这样对齐连接...... 最终连接图
  • 但是,如果我拖动 PK 符号 (PK符号) 或 FK 符号 (FK符号)到位,但不要释放鼠标按钮,SSMS 将崩溃,导致光标不断旋转。

我已经在微软自己的技术论坛上发布了这个问题,但这个问题几乎没有得到任何回报。

我很乐意听取任何遇到此问题的人的意见,尤其是如果他们发现原因的话!

  • [18.6](https://feedback.azure.com/forums/908035/suggestions/37992649)修复了一些基于图表的问题。 (3认同)