2016-03-01 107 views
7

我使用SSMS 2014年我能插入一個片段,但他們似乎並沒有對響應的快捷方式(即crproc [標籤])SSMS片段和快捷方式

這是已知功能的工作?

<?xml version="1.0" encoding="utf-8" ?> 
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
<CodeSnippet Format="1.0.0"> 
<Header> 
<Title>prod1</Title> 
<Description>testing</Description> 
<Author> dale </Author> 
<SnippetTypes> 
<SnippetType>Expansion</SnippetType> 
</SnippetTypes> 
<Shortcut>crproc</Shortcut> 
</Header> 
<Snippet> 
<Declarations> 
<Literal> 
<ID>DatabaseName</ID> 
<ToolTip>Name of database.</ToolTip> 
<Default>DB</Default> 
</Literal> 
</Declarations> 
<Code Language="SQL"> 
<![CDATA[ 
------------------------------------------------------ 
-- FILENAME: Template-Expansion.snippet 
-- PURPOSE: Template for Expansion (Insert) snippets. 
-- AUTHOR: Ken O. Bonn 
-- DATE: May 15, 2013 
------------------------------------------------------ 
SET NOCOUNT ON; 

EXEC SP_HELPDB $DatabaseName$; 

]]> 
</Code> 
</Snippet> 
</CodeSnippet> 
</CodeSnippets> 

回答

8

沒有,由於某種原因,微軟似乎已經在實際執行這個功能不感興趣,儘管代碼片斷是沒有它完全無用的(因爲鼠標點擊和按鍵的數量,你需要插入片段) 。

您每天鍵入「SELECT * FROM ...」或「選擇TOP 10 * FROM」等等......多少次? 非常令人沮喪!

即使SSMS 2016 Release Candidate也不支持它。

「ApexSQL Complete」(一款免費工具)顯然會做到,但是這並不支持SSMS 2016!

0

ApexSQL Complete您有支持SSMS 2016年甚至是新的SSMS 17 RC,不同之處在於它是完全免費

2

不要擔心給它一個特定的快捷方式可能做到這一點,當然。
只需將其添加到我的snippets文件夾下即可。

確保將其保存爲是.snippet

按CTRL + K,Ctrl + S鍵
向下箭頭到我的片段進入
向下箭頭您要進入片斷

您代碼段將圍繞你想要的代碼。

+0

或Ctrl + K,CTRL + X並將其保存在一個差異erent文件夾,如果你想內聯。 – StuckOnSimpleThings

+0

OP詢問SSMS中的快捷方式功能是否有效,這與您的信息無關。 – Saulius

-1

將您的片段添加到其他SurroundsWith片段所在的「Functions」文件夾中。然後按下CTRL + K,CTRL + S(SurroundsWith Snippets的快捷鍵)並從代碼片段名稱中輸入幾個字母,然後按Enter鍵。如果只有「功能」文件夾具有SurroundsWith片段,則上下文菜單中不會顯示其他文件夾。否則,您可以從相應的文件夾名稱中鍵入幾個字母,然後按Tab鍵。這個過程很像this answer.

對於我的環境的開始,如果和當段位於:

C:\ Program Files文件(x86)的\微軟SQL 服務器\ 130個\ TOOLS \ BINN \ ManagementStudio \ SQL \片段\ 1033 \功能

下面是SELECT *的示例代碼片段FROM:

<?xml version="1.0" encoding="utf-8" ?> 
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
    <CodeSnippet Format="1.0.0"> 
     <Header> 
      <Title>Select</Title> 
      <Shortcut>sel</Shortcut> 
      <Description>SELECT * FROM _ WHERE 1=1 AND</Description> 
      <Author/> 
      <SnippetTypes> 
       <SnippetType>SurroundsWith</SnippetType> 
      </SnippetTypes> 
     </Header> 
     <Snippet> 
      <Code Language="SQL"> 
       <![CDATA[ 
SELECT * FROM dbo.$selected$$end$ 
WHERE 1=1 
--AND 
]]> 
      </Code> 
     </Snippet> 
    </CodeSnippet> 
</CodeSnippets> 
+0

OP詢問SSMS中的快捷功能是否有效,並且您的信息無關緊要。 – Saulius

+0

@Saulius我道歉我的帖子有點冗長。如果你遵循它,它會告訴你如何獲得快捷方式的工作。基本上,您將快捷方式插入到SurroundsWith片段中,然後使用CTRL + K,CTRL + S和您指定的快捷鍵快速調用它。 –