Dieser Artikel wurde maschinell übersetzt.

SQLServer 2012: T-SQL-Codeausschnitte

Die Ausschnitte in SQL Server 2012 sind im Wesentlichen Vorlagen, mit denen die Erstellung von Datenbankanweisungen beschleunigt werden kann.

Saleem Hakani

Stellen Sie sich eine Reihe von Befehlen, die Sie immer verwenden, wenn Sie einen Trigger, Tabelle, gespeicherte Prozedur oder sogar eine Select-Anweisung erstellen. Jetzt stellen Sie vor, dass alle diese Befehle etabliert und ist einsatzbereit. Sie können erheblich reduzieren die Menge an Zeit und Code, was Sie schreiben, verwenden die neue T-SQL-Code-Snippets in SQL Server 2012.

T-SQL-Ausschnitte können Sie schnell Build T-SQL-Anweisungen ohne die Befehle oder deren Syntax zu merken. Dieses Feature können Sie dazu beitragen, Entwicklungszeit und mehr Produktivität für Ihre Entwickler und DBAs.

Ausschnitt Vorlagen in SQL Server 2012 basieren auf XML mit vordefinierten Feldern und Werten. Wenn Sie ein T-SQL-Snippet verwenden, diese Felder werden hervorgehoben und können durch jedes Feld Registerkarte und ändern Sie die Werte nach Bedarf.

Ausschnitte sind für einfache Bedienung kategorisiert. Sie können anzeigen und wählen Sie verschiedene Ausschnitte auf der Grundlage der Kategorie. SQL Server 2012 stellt drei Typen von Ausschnitten:

  • **Standard-Snippets (oder Expansion Ausschnitte):**Dies sind die Code-Vorlagen für verschiedene T-SQL-Befehle, die Sie schnell in den T-SQL-Code einfügen können, wenn Sie Tabellen, gespeicherte Prozeduren, Trigger usw. erstellen.
  • **Surround-Schnipsel:**Dies sind die Code-Vorlagen, dass die Hilfe, die Sie implementieren Code Konstrukte wie z. B. beginnen Ende, If, obwohl und so weiter.
  • **Benutzerdefinierte Schnipsel:**Sie können eigene benutzerdefinierte Ausschnitte, die angezeigt wird mit dem Ausschnitt-Menü erstellen.

Erstellen von benutzerdefinierten Ausschnitten

Schauen wir uns zum Erstellen eines benutzerdefinierten Ausschnitts und der Ausschnitt-Menü hinzugefügt. Erstellen und Verwenden eines Ausschnitts ist ein Prozess in drei Schritten:

  1. Erstellen eines Ausschnitts mit XML
  2. Registrieren Sie den Ausschnitt in SQL Server Management Studio (SSMS)
  3. Gerufen Sie den Ausschnitt wird auf, wenn Abfrage-Editor verwenden

Standardmäßig sind alle T-SQL-Ausschnitte in den folgenden Ordner gespeichert und als Snippet-Dateien gespeichert:
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\SQL\Snippets\1033

Schritt 1. Erstellen Sie eine T-SQL-Snippet-Datei mit XML
Hier ist ein Ausschnitt Sie eine Select-Anweisung für eine Tabelle zu schreiben können (es wird auch Ihnen eine CASE-Anweisung für eine Überprüfung auf Gleichheit für eine Spalte verwenden):

CASE_END.SNIPPET File <?xml version="1.0" encoding="utf-8" ?> <CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title>Case-End</Title> <Description> Insert Case...End Construct. </Description> <Author> Saleem Hakani (Microsoft Corporation) </Author> <SnippetTypes> <SnippetType>Expansion</SnippetType> </SnippetTypes> </Header> <Snippet> <Code Language="SQL"> <![CDATA[ Select <Column_Name1>, <Column_Name2>, <Column_Name3>, <Column_Name4>= CASE <Column_Name4> WHEN '<value>' THEN '<Result>' WHEN '<value>' THEN '<Result>' WHEN '<value>' THEN '<Result>' WHEN '<value>' THEN '<Result>' ELSE 'Value not found' END, <Column_Name5>, <Column_Name6> From <Table_Name> Go ]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>

Schritt 2. Registrieren Sie den Ausschnitt mit SSMS

Sobald Sie diese Datei erstellt haben, den Codeausschnitt-Manager verwenden, um den Ausschnitt mit SSMS registrieren. Sie können fügen Sie ein neuer Ordner basierend auf den Ausschnitt-Kategorie oder einzelne Ausschnitte in den Ordner My Code-Schnipsel zu importieren.

Einen Ausschnitt-Ordner hinzufügen:

  1. Starten Sie SSMS
  2. Wählen Sie die Menüpunkte Extras und klicken Sie auf Codeausschnitt-Manager, die den Codeausschnitt-Manager startet
  3. Klicken Sie auf den "Hinzufügen" Schaltfläche
  4. Wechseln Sie zu dem Ordner mit CASE_END.Snippet-Datei, und klicken Sie auf Ordner auswählen

Der nächste Schritt ist, um den Ausschnitt in in SSMS zu importieren:

  1. Starten Sie SSMS
  2. Wählen Sie die Menüpunkte Extras und klicken Sie auf Codeausschnitt-Manager
  3. Klicken Sie auf die Schaltfläche "Importieren" im unteren Bereich
  4. Suchen Sie den Ordner, in CASE_END.snippet Datei wählen Sie CASE_End.snippet Datei aus, und klicken Sie auf die Schaltfläche Öffnen

Schritt 3. Aufrufen oder einen T-SQL-Ausschnitt aus dem Abfrage-Editor einzufügen

Sie haben nun einen Ausschnitt, die CASE_END, die Sie aufrufen können aus dem Abfrageeditor mit Tastenkombination durch Drücken von STRG + K + X aufgerufen. Wählen Sie den Kategorie-Ordner in dem Sie den Ausschnitt gespeichert haben. Sie könnte auch mit einem Rechtsklick das Kontextmenü im Abfrage-Editor und wählen Sie Ausschnitt einfügen.

Einen Ausschnitt kann auch durch einen Rechtsklick auf das Kontextmenü im Abfrage-Editor aufgerufen werden. Dies präsentieren Ihnen mit verschiedenen Snippet-Optionen.

Mit diesen Schritten, können Sie T-SQL-Code-Snippets zu erstellen und registrieren Sie sie mit SSMS. Sie können auch Erstellen von komplexe Ausschnitten von verschiedenen regulären Aufgaben und Ihnen das Leben Verwalten von SQL Server sehr viel einfacher.

Ausschnitt-Lösungen

Stellen Sie sich vor, dass Sie ein Entwickler oder DBA für die Sicherheit Ihrer Server verantwortlich sind. Sie haben 500 Anmeldungen in SQL Server, aber Sie wissen nicht, die Ebene Serverrollen, die diese 500 Anmeldungen zugeordnet sind. Würde Sie jedem Login Eigenschaften einzeln zu überprüfen, würde es dauern Stunden oder sogar Tage. Eine automatisierte Möglichkeit haben, schnell alle auf Serverebene Anmeldungen überprüfen würde die Zeit verringern, Code sowie Code Genauigkeit und Entwickler und DBA-Produktivität zu erhöhen.

Hier ist ein Ausschnitt, der Sie schnell auf Serverebene Anmeldungen und ihre Rollen auf Serverebene und-Berechtigungen aussehen läßt. Diese SecuritySPY-Ausschnitt-Liste gibt auf Serverebene Anmeldungen und der Rollen, die sie zugeordnet sind:

<?xml version="1.0" encoding="utf-8" ?> <CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title>SQL_SecuritySPY - By Saleem Hakani (Microsoft Corporation)</Title> <Description> Shortcut for checking SQL Server Server Role Permissions </Description> <Author> Saleem Hakani (Microsoft Corporation) </Author> <SnippetTypes> <SnippetType>Expansion</SnippetType> </SnippetTypes> </Header> <Snippet> <Code Language="SQL"> <![CDATA[ --Author: Saleem Hakani (Microsoft Corporation) --Website: Http://sqlcommunity.com Select 'Login Name'= Substring(upper(SUSER_SNAME(SID)),1,40), 'Login Create Date'=Convert(Varchar(24),CreateDate), 'System Admin' = Case SysAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Security Admin' = Case SecurityAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Server Admin' = Case ServerAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Setup Admin' = Case SetupAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Process Admin' = Case ProcessAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Disk Admin' = Case DiskAdmin When 1 then 'YES (VERIFY)' When 0 then 'NO' End, 'Database Creator' = Case DBCreator When 1 then 'YES (VERIFY)' When 0 then 'NO' End from Master.Sys.SysLogins order by 3 desc Go ]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>

Jetzt haben Sie einen Ausschnitt, genannt SecuritySPY. Wie bereits erläutert, können Sie dies mit der Tastenkombination von Abfrage-Editor aufrufen. Sie können auch mit einem Rechtsklick das Kontextmenü im Abfrage-Editor und wählen Sie Ausschnitt einfügen.

Erstellen und Verwenden von Ausschnitten können Sie Ihre SQL Server-Verwaltungsaufgaben optimieren. Mit eine Handvoll von vordefinierten Befehlen zur Verfügung hält dich davon ab, die gleiche Sache immer und immer wieder zu tun haben.

Greg Steen

Saleem Hakani ist ein leitender Architekt bei Microsoft mit mehr als 18 Jahren Erfahrung. Er arbeitet seit 1992 mit SQL Server und arbeitete an zahlreichen großen Microsoft-Dienste als Ingenieur und Architekt in den letzten sieben Jahren, einschließlich Hotmail, Bing und MSN. Hakani führt der weltweiten Gemeinschaft der SQL-Server für Microsoft-Mitarbeiter, und ein technischer Referent für verschiedene Microsoft-Veranstaltungen einschließlich TechReady, SQLFEST, SQL-Schule und SQLPASS.

Verwandte Inhalte