Schnellstart: Verwenden Sie Inline-GitHub-Copilot-Vervollständigungen in SQL-Dateien

Inline-Vervollständigungen sind die Ghost-Text-Vorschläge, die während Sie tippen in einer .sql-Datei angezeigt werden. Sie stammen aus dem GitHub Copilot-Modell und sind nützlich, um allgemeine SQL-Muster während der Eingabe fertig zu stellen. In diesem Artikel wird erläutert, was Inline-Vervollständigungen bieten, was ihre wichtigste Einschränkung ist (sie haben keinen Zugriff auf Ihr Datenbankschema) und wann stattdessen der @mssql Chat-Teilnehmer für schemabezogene Vorschläge verwendet werden sollte.

Inline-Vervollständigungen haben keinen Zugriff auf dein verbundenes Datenbankschema. Sie werden direkt vom GitHub Copilot-Modell generiert, ohne auf den Schemakontext der MSSQL-Erweiterung zuzugreifen. Verwenden Sie beim Schreiben von SQL den @mssql Chat-Teilnehmer für schemasensitive Vorschläge. Sehen Sie sich aus architektonischen Gründen an, wie GitHub Copilot mit der MSSQL-Erweiterung arbeitet.

Wichtige Erkenntnisse

  • Inline-Fertigstellungen generieren Geistertext, während Sie im Editor eingeben.
  • Sie sind nützlich für generische Transact-SQL (T-SQL)-Muster (Verknüpfungen, SELECT Klauseln, allgemeine Funktionen).
  • Sie verweisen nicht auf das Schema Ihrer verbundenen Datenbank.
  • Verwenden Sie für schemafähige Vervollständigungen den @mssql Chat-Teilnehmer anstelle von Inlineabschlüssen.
  • Das Smart Action-Symbol und die Tastenkombination STRG+I rufen GitHub Copilot im ausgewählten Code auf. Sie ergänzen Inline-Vervollständigungen.

Voraussetzungen

Stellen Sie sicher, dass Sie mit einer Datenbank verbunden sind und ein aktives Editorfenster mit der MSSQL-Erweiterung geöffnet ist. Wenn Sie eine Verbindung herstellen, versteht der @mssql Chatteilnehmer den Kontext Ihrer Datenbankumgebung und kann genaue, kontextbezogene Vorschläge liefern. Wenn Sie keine Verbindung mit einer Datenbank herstellen, verfügt der Chatteilnehmer nicht über das Schema oder den Datenkontext, um aussagekräftige Antworten bereitzustellen.

In den folgenden Beispielen wird die AdventureWorksLT2022 Beispieldatenbank verwendet, die Sie auf der Startseite von Microsoft SQL Server-Beispielen und Communityprojekten herunterladen können.

Um optimale Ergebnisse zu erzielen, passen Sie Tabellen- und Schemanamen an Ihre eigene Umgebung an.

Stellen Sie sicher, dass der Chat das @mssql Präfix enthält. Geben Sie @mssql z. B. gefolgt von Ihrer Frage oder Aufforderung ein. Dieses Präfix stellt sicher, dass der Chatteilnehmer versteht, dass Sie sql-bezogene Unterstützung anfordern.

Was inline-Fertigstellungen bieten

Wenn Sie bei aktiviertem GitHub Copilot in eine .sql-Datei tippen, erscheint Ghost-Text direkt im Text. Annehmen mit Tab oder Enter; ignorieren, indem Sie die Eingabe fortsetzen.

Inline-Vervollständigungen eignen sich gut für:

  • Fertigstellen allgemeiner Muster (SELECT * FROM, INNER JOIN ... ON, WHERE x = ?).
  • Vervollständigen von teilweisen Bezeichnern, die Sie bereits in der Datei eingegeben haben.
  • Generierung von Vorlagencode für gängige SQL-Konstrukte.

Inline-Vervollständigungen eignen sich nicht gut für:

  • Verwenden sie echte Tabellen- oder Spaltennamen aus Ihrer Datenbank (sie erraten basierend auf dem Kontext).
  • Berücksichtigen des tatsächlichen Schemas oder der Beziehungen der Datenbank.
  • Verwenden des Schemakontexts des @mssql Chatteilnehmers.

Warum Inline-Vervollständigungen nicht schemasensitiv sind

Die Anwendungsprogrammierschnittstelle (API) für die Inline-Vervollständigung von Visual Studio Code unterstützt pro Dokument faktisch nur einen einzigen Anbieter. Wenn GitHub Copilot aktiviert ist, können Drittanbietererweiterungen (einschließlich der MSSQL-Erweiterung) keinen schemafähigen Ghosttext für SQL-Dateien beitragen. Ghost-Text stammt direkt aus dem GitHub Copilot Modell.

Dies ist das Plattformverhalten, keine MSSQL-Erweiterungsbeschränkung. Die vollständige Erläuterung finden Sie unter How GitHub Copilot works with the MSSQL extension.

Erhalten Sie schemaspezifische Vorschläge, während Sie SQL schreiben.

Verwenden Sie den @mssql Chat-Teilnehmer für Vorschläge, die sich auf Ihre tatsächlichen Tabellen, Spalten und Beziehungen beziehen. Adresse @mssql im Chat:

@mssql Write a T-SQL query that lists customers from SalesLT.Customer
who placed an order in the last 30 days.

Der Chatteilnehmer enthält Schemametadaten in der Anforderung, sodass Vorschläge auf reale Objekte in Ihrer Datenbank verweisen.

Verwenden des Smart Action-Symbols

Wenn Sie SQL im Editor auswählen, wird das ✨ Smart Action-Symbol neben der Auswahl angezeigt. Wählen Sie es aus, um ein kurzes Menü zu öffnen:

  • Mit Copilot ändern: Schreiben Sie die Auswahl mit einem Inline-Vorschlag um.
  • Erklären: Erhalten Sie eine Erklärung in natürlicher Sprache für die ausgewählte SQL-Abfrage.
  • /doc: Generieren Sie Dokumentationskommentare für die Auswahl.
  • /fix: Schlagen Sie Korrekturen für Probleme in der Auswahl vor.

Wenn Sie "Überprüfen mithilfe von GitHub Copilot" auswählen, wird eine Inlineempfehlung angezeigt:

Screenshot einer Inlineempfehlung von GitHub Copilot zum Optimieren einer SQL-Abfrage in Visual Studio Code.

Verwenden von Tastenkombinationen

Aufrufen GitHub Copilot Inline mit:

  • Strg+I auf Windows und Linux
  • Cmd+I unter macOS

Ein Inlineaufforderungsfeld wird angezeigt, in dem Sie Fragen stellen oder Änderungen an Ihrer Abfrage anfordern können.

Screenshot des Aufrufens von GitHub Copilot mithilfe der Tastenkombination STRG plus I in Visual Studio Code.

Inline-Vervollständigungen vs. Chat: Entscheidungsleitfaden

Wenn Sie möchten... Verwendung
Beenden eines allgemeinen SQL-Musters während der Eingabe Inline-Vervollständigungen
Schemasensitive Abfrage abrufen @mssql Chat
Ändern einer hervorgehobenen Abfrage Symbol "Intelligente Aktion"
Führen Sie einen Dialog mit mehreren Gesprächsschritten über Ihr Schema @mssql Chat
GitHub Copilot direkt bei einer neuen Eingabe aufrufen Ctrl+I / Cmd+I

Teilen von Erfahrungen

Um uns dabei zu helfen, GitHub Copilot für die MSSQL-Erweiterung zu verfeinern und zu verbessern, verwenden Sie die folgende GitHub-Problemvorlage, um Ihr Feedback zu übermitteln: GitHub Copilot Feedback

Berücksichtigen Sie bei der Übermittlung von Feedback Folgendes:

  • Getestete Szenarien: Teilen Sie uns mit, auf welche Bereiche Sie sich konzentrieren, z. B. Schemaerstellung, Abfragegenerierung, Sicherheit, Lokalisierung.

  • Was gut funktioniert hat: Beschreiben Sie eine Erfahrung, die glatt verlief, hilfreich war oder Ihre Erwartungen übertroffen hat.

  • Probleme oder Fehler: Schließen Sie Alle Probleme, Inkonsistenzen oder verwirrende Verhaltensweisen ein. Screenshots oder Bildschirmaufzeichnungen sind besonders hilfreich.

  • Verbesserungsvorschläge: Teilen Sie Ideen zur Verbesserung der Benutzerfreundlichkeit, zur Erweiterung der Abdeckung oder zur Verbesserung der Antworten von GitHub Copilot.