【问题标题】:Keyboard shortcut to automatically wrap selected text in IsNull([text], 0) in SSMS在 SSMS 的 IsNull([text], 0) 中自动换行所选文本的键盘快捷键
【发布时间】:2019-06-14 20:40:42
【问题描述】:

是否有一些方法可以在SQL Server Management Studio(SSMS)中具有快捷方式,即选择文本时,它将在ISnull()语句中的文本包装?

例如,我突出显示下面的文字:

My_column_name

当我点击键盘快捷键时,突出显示的内容变成:

IsNull(My_column_name, 0)

我正在使用 SSMS v17.4

【问题讨论】:

  • AFAIK 无法使用本机 SSMS 执行此操作。某些第三方扩展中可能有此功能,但我不知道。这是一个非常具体的规则。如果您启用了智能感知,那么您可以设计一些自定义快捷键组合。
  • 如果你有类似 SQL Prompt 的东西,你可以设置一个 sn-p 来执行此操作,但这不是 SSMS 的原生功能。
  • 虽然没有原生的,但这里有很多替代建议:stackoverflow.com/questions/647594/…

标签: sql-server ssms isnull


【解决方案1】:

我可能已经找到了办法。在C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\SQL\Snippets\1033\Function 目录中(根据您的安装进行相应调整),我复制了Begin End.snippet 文件,将副本命名为IsNull.snippet,并修改了新文件。我改变了:

BEGIN

$selected$ $end$

END

收件人:

IsNull($selected$ $end$, 0)

(我还更改了 Title、Description 和 Author 标记 - 随心所欲。)

然后,在 SSMS 中,我使用 Tools -> Code Snippets Manager 导入新的 sn-p。现在,在查询窗口中选择了My_column_name,我可以使用 Ctrl+K、Ctrl+S、Down、Down、Enter、Down、Enter 来应用新的 sn-p。

这不是一次击键,而是朝着那个方向前进。也许这会激励其他可以让它变得更好的人。

【讨论】:

  • 有趣的是,我们几乎同时发布了关于同一主题的答案。相同的解决方案,但以不同的方式解释。
【解决方案2】:

您可以使用 sn-ps 完成此操作。这不是一个简单的快捷方式,但只需按几下键即可到达。

首先你需要像这样创建一个 sn-p:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>ISNULL</Title>
            <Shortcut></Shortcut>
            <Description>Inserts ISNULL function</Description>
            <Author>Luis Cazares</Author>
            <SnippetTypes>
                <SnippetType>SurroundsWith</SnippetType>
            </SnippetTypes>
        </Header>
        <Snippet>
        <Declarations>
        </Declarations>
        <Code Language="SQL"><![CDATA[ISNULL( $end$$selected$, 0)]]>
        </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

将其保存为.snippet 文件,并将其保存在用于sn-ps 的文件夹中。您可以使用一组作为默认设置。要了解哪个文件夹是您的默认文件夹或添加其他文件夹,请转到 SSMS 的“工具”菜单中的Code Snippets Manager

一旦您的 sn-p 位于注册位置,请选择代码,按 Ctrl+K,Ctrl+S,然后会出现 sn-ps 上下文菜单。您可以通过开始输入文件夹和 sn-p 名称并在到达那里时按 Enter 或 Right 来遍历它。

对于短的 sn-ps 可能不值得,但对于较大的 sn-ps,它是惊人的。我写了更详细的解释in here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-06
    • 2014-07-28
    • 2012-08-31
    • 1970-01-01
    相关资源
    最近更新 更多