SSMS 15 设计器中的默认数据类型

SSMS 15 Default Data Type in Designer

有什么方法可以强制 SSMS (SQL Server Management Studio) 15 使用我想要的默认数据类型在设计器中创建一个列,在本例中是 nvarchar(100) 而不是 nchar(10).

有趣的是,网上有一些关于此的想法,涉及更改注册表,但是当我这样做并重新启动 SSMS 时,注册表会恢复为 nchar(10)

这让我想知道 SSMS 中现在是否有设置或选项来实现此目的?我已经展开了选项中的每棵树,但我在那里找不到任何东西。

此时我实际上会考虑一个插件。

您可以通过更改注册表中的特定项来修改这些值。

查找名为:

的注册表项
  • SSVDefaultColumnType
  • SSVDefaultNCharLength

根据您安装的 SSMS 的确切版本,您可以在不同的路径中找到这些密钥。

例如使用 SQL Server Management Studio 17.9.1,您可以在以下路径中找到这些密钥:

HKEY_CURRENT_USER\Software\Microsoft\SQL Server Management Studio.0\DataProject

我将这些键的值更改为 varchar(50):

现在我在 table 编辑器中的默认 type/size 已更改为:

我决定 post 一个答案,因为 SSMS 的行为有点复杂。

首先,对于版本 18.5.1(最新,我正在使用的版本),注册表路径是:

HKEY_CURRENT_USER\Software\Microsoft\SQL Server Management Studio.0_IsoShell\DataProject.

正如其他人已经指出的那样,找到路径和密钥并不难。

但是问题不是找到密钥,而是当我在进行更改后重新启动编辑器时,SSMS 正在恢复注册表项。由于编辑器在关闭时保存了这些键,而我在失败后进行更改(编辑器仍然打开),所以键总是被覆盖。

诀窍是在 更改注册表之前关闭 SSMS ,这是我以前没有做过的事情。关于这个主题的每篇文章都指出必须 'restart the editor after making the changes',而正确的建议是 'close the editor before making the changes'.

希望遇到同样问题的其他人会觉得这很有用。