Freigeben über


Verwenden von Datenbankanweisungen mit GitHub Copilot in SQL Server Management Studio (Vorschau)

Datenbankanweisungen enthalten GitHub Copilot in SQL Server Management Studio (SSMS) mit datenbankspezifischem Kontext und Anleitungen, die sich direkt in der Datenbank befinden. Datenbankbesitzer und -teams können sie verwenden, um Geschäftsregeln, Datenkonventionen und Verwendungsmuster zu beschreiben. Mit Datenbankanweisungen kann Copilot präzisere, aussagekräftigere und konsistentere Antworten generieren, wenn Benutzer Fragen stellen oder Abfragen schreiben. Datenbankanweisungen dienen als lebendige Dokumentation, die mit der Datenbank reist und automatisch während Copilot-Interaktionen angewendet wird.

In diesem Artikel erfahren Sie, wie Sie Datenbankanweisungen verwenden, mit denen Benutzer und Copilot die richtigen Objekte und Informationen schneller finden können. Dieses Feature trägt dazu bei, den Zeitaufwand für die Bereitstellung von Datenbank, Unternehmen und internen Kenntnissen für Copilot zu reduzieren.

Verwandte Informationen zu GitHub Copilot Chat finden Sie unter Verwenden der GitHub Copilot Chat-Erfahrung in SQL Server Management Studio (Vorschau).

Funktionsweise von Datenbankanweisungen

Datenbankanweisungen werden als Metadaten in der Datenbank gespeichert, sodass Copilot sie zur Laufzeit automatisch ermitteln und anwenden kann. Wenn ein Benutzer mit GitHub Copilot für eine Datenbank interagiert, z. B. eine Frage in natürlicher Sprache stellt oder T-SQL generiert, enthält Copilot diese Anweisungen als zusätzlichen Kontext. Dieser Kontext stellt sicher, dass Antworten Geschäftsdefinitionen, kanonische Tabellen und domänenspezifische Regeln widerspiegeln, anstatt nur auf Schemanamen oder Schätzarbeiten zu vertrauen. Anweisungen werden über Sitzungen hinweg beibehalten und sind für jeden Benutzer verfügbar, der auf dieselbe Datenbank zugreift.

Voraussetzungen

Datenbankanweisungen für GitHub Copilot in SSMS basieren auf Informationen in erweiterten Eigenschaften.

  1. Installieren Sie SSMS 22.3 oder eine höhere Version mit der AI-Unterstützungs-Workload.

  2. Melden Sie sich mit Copilot-Zugriff bei Ihrem GitHub-Konto an.

Verwenden Sie GitHub Copilot kostenlos. Registrieren Sie sich, und verwenden Sie KI, um schneller und effizienter zu codieren.

Verwenden von GitHub Copilot zum Hinzufügen oder Anzeigen von Datenbankanweisungen

Diese Schritte zeigen, wie Sie Datenbankanweisungen mithilfe von GitHub Copilot erstellen und verwenden.

Stellen Sie Copilot eine Frage, um fehlenden Kontext aufzudecken

Beginnen Sie, indem Sie Copilot eine Frage zu Ihren Daten in natürlicher Sprache stellen. Wenn das Unternehmen z What was revenue for the last quarter of the year? . B. unterschiedliche Anfangstermine für Geschäftsjahr und Kalenderjahr hat oder wenn für die Einnahmen eine Berechnung erforderlich ist, die mehrere Tabellen umfasst, sind die relevanten Tabellen oder Spalten für eine Datenbankanweisung gut geeignet.

Definieren der Geschäftsregel als Datenbankanweisung

Beschreiben Sie im Copilot-Chat die Regel oder Klarstellung, die Copilot merken soll. Beispiel: Add an instruction for the Finance.CompanyRevenue table to state that revenue is defined as SUM(NetAmount) excluding refunds recorded in Finance.Refunds.

Speichern der Anweisung in der Datenbank

Sobald Copilot die T-SQL-Syntax generiert, um die Anweisung als erweiterte Eigenschaft hinzuzufügen, müssen Sie diese Informationen als Datenbankanweisung beibehalten. Im Ask-Modus kann GitHub Copilot keine Änderungsabfragen für die Datenbank ausführen.

-- Created by GitHub Copilot in SSMS - review carefully before executing
EXECUTE sp_addextendedproperty
    @name = N'AGENTS.md',
    @value = N'Revenue is defined as SUM(NetAmount) excluding refunds recorded in Finance.Refunds. When calculating actual revenue, refunds must be subtracted from the Revenue column values.',
    @level0type = N'SCHEMA',
    @level0name = N'Finance',
    @level1type = N'TABLE',
    @level1name = N'CompanyRevenue';

Nachdem Sie die Anweisung zur Datenbank hinzugefügt haben, wendet Copilot die Informationen automatisch auf zukünftige Interaktionen an.

Verwenden Sie Copilot mit der angewandten Anweisung.

Stellen Sie Copilot die gleiche oder eine verwandte Frage erneut, What was revenue for the last quarter of the year? copilot verwendet jetzt die gespeicherte Anweisung, um Ergebnisse zu generieren, die mit Ihrer Geschäftsdefinition des Umsatzes übereinstimmen, ohne dass Sie die Regel ruhen müssen. Sie können Copilot auch bitten, copilots Show me the query used to get this information. Verständnis der Anweisung zu bestätigen.

Weitere Beispiele

Es gibt unendliche Szenarien, in denen Geschäftsregeln für ein Datenbankobjekt angewendet werden müssen, einschließlich Tabellen, Spalten und gespeicherten Prozeduren.

  • The dbo.Apts table stores information about patient appointments
  • The Status column in dbo.Apts encodes status as: 1 = Scheduled, 2 = Completed, 5 = Confirmed, 99 = Cancelled
  • The DtCrtd column in dbo.Apts lists the date and time the appointment was created

Wenn Sie Datenbankanweisungen mit Copilot verwenden, können Sie auch nach Anweisungen fragen, die derzeit vorhanden sind.

  • Show me the database instructions for this database
  • Does this database have a constitution set?

Verwenden von GitHub Copilot zum Erstellen einer Datenbankkonstitution

GitHub Copilot in SSMS unterstützt auch eine konkrete Festlegung für Ihre Datenbank, die die höchste Prioritätsanweisung für die Datenbank festlegt. Die Verfassung kann Empfehlungen, Codierungsrichtlinien, Aufbewahrungsrichtlinien und vieles mehr enthalten.

Hinweis

Die Implementierung einer Datenbankkonfiguration bezieht sich auf GitHub Copilot-Unterhaltungen für alle Benutzer, die GitHub Copilot in SSMS verwenden. Die Empfehlungen und Richtlinien beziehen sich ausschließlich auf GitHub Copilot-Unterhaltungen.

EXECUTE sp_addextendedproperty
    @name = N'CONSTITUTION.md',
    @value = N'Any T-SQL in this database must comply with the organizational standards and guidelines outlined in this constitution document.
 Queries that use SELECT * should not be used.';

Anforderungen

Datenbankanweisungen werden derzeit nur als erweiterte Eigenschaften unterstützt. Sie folgen dem AGENTS.md Format, um den Kontext bereitzustellen, der von GitHub Copilot verwendet wird. Der Name der erweiterten Eigenschaft des Objekts muss sein AGENTS.md. Für ein Objekt kann nur eine benannte AGENTS.md Eigenschaft vorhanden sein. Wenn eine Anweisung falsch ist, können Sie sie mit sp_updateextendedproperty aktualisieren oder mit sp_dropextendedproperty löschen. Es ist keine andere Konfiguration erforderlich, damit Datenbankanweisungen funktionieren.