Sdílet prostřednictvím


Rychlý návod: Jak používat chat a integrované návrhy GitHub Copilot

GitHub Copilot nabízí vložené návrhy při psaní v editoru kódu i interaktivní chatovací prostředí. Můžete klást otázky účastníkům chatu nebo zadávat výzvy zadáním @mssql následovaným vaším pokynem.

Začínáme

Ujistěte se, že jste připojení k databázi a máte otevřené okno aktivního editoru s rozšířením MSSQL. Toto připojení umožňuje účastníkovi @mssql chatu porozumět kontextu vašeho databázového prostředí a umožnit přesné a kontextové návrhy. Bez připojení k databázi nebude účastník chatu mít schéma ani datový kontext, aby poskytoval smysluplné odpovědi.

Následující příklady používají AdventureWorksLT2022 ukázkovou databázi, kterou si můžete stáhnout z domovské stránky Ukázky microsoft SQL Serveru a projekty komunity .

Nejlepších výsledků dosáhnete, když upravíte názvy tabulek a schémat tak, aby odpovídaly vašemu vlastnímu prostředí.

Ujistěte se, že chat obsahuje předponu @mssql . Například zadejte @mssql svůj dotaz nebo výzvu. Tím zajistíte, že účastník chatu pochopí, že žádáte o pomoc související s SQL.

Chat s účastníkem chatu MSSQL v editoru Visual Studio Code

Pomocí účastníka chatu @mssql v GitHub Copilot Chatu můžete přinést inteligentní, kontextově citlivou pomoc do pracovního postupu vývoje SQL, a to vše přímo v editoru Visual Studio Code. Ať už píšete dotazy, vyvíjíte schéma, nebo integrujete s kódem aplikace, GitHub Copilot vám může pomoct navrhnout a pochopit relační modely, generovat nebo optimalizovat T-SQL kód, vytvářet počáteční data, vytvářet návrhy migrací ORM a dokonce vysvětlit obchodní logiku nebo problémy zabezpečení pomocí přirozeného jazyka, a to vše přizpůsobené kontextu propojené databáze.

Tady jsou běžné případy použití a příklady toho, co se můžete zeptat prostřednictvím účastníka chatu:

Zobrazení seznamu nebo zkoumání objektů ve schématu databáze

Ptejte se na tabulky, sloupce, schémata a metadata objektů v databázi.

Seskupení objektů podle typu

Show all objects in the `SalesLT` schema of my current database, grouped by type.

Výpis sloupců a vlastností tabulky

List the columns, data types, and nullability of the `SalesLT.Customer` table.

Počítání tabulek, zobrazení a procedur v databázi

How many tables, views, and procedures are defined in my current database?

Psaní jednoduchých dotazů

Získejte pomoc s psaním běžných dotazů SQL pro filtrování, agregaci a spojení.

Vrácení seznamu zákazníků na základě nedávných objednávek

Write a T-SQL query to list all customers from `SalesLT.Customer` who placed an order in the last 30 days based on the latest order date.

Výpočet průměrného součtu objednávek na zákazníka

Generate a query that calculates the average order total per customer from the `SalesLT.SalesOrderHeader` table, sorted descending.

Aktualizace dotazu s jiným sloupcem

Update the previous query to include the full name of each customer from the `SalesLT.Customer` table.

Vysvětlení relací nebo konceptů

Požádejte o zjednodušené vysvětlení vztahů schématu, logiky dotazů nebo funkcí relevantních pro vývoj.

Popis relací cizích klíčů mezi tabulkami

Describe the foreign key relationship between `SalesLT.SalesOrderHeader` and `SalesLT.Customer` tables in my current database.

Vysvětlení relací mezi tabulkami a souvisejících klíčů

I'm a developer new to T-SQL. Explain how `SalesLT.SalesOrderHeader` is related to `SalesLT.Customer`, and what keys are involved.

Vysvětlení datových typů vektorů a možností použití

Explain how vector data types work in SQL Server and when to use them for AI scenarios.

Generování kódu migrace nebo integrace

Požádejte o pomoc při generování skriptů migrace založených na SQL nebo ORM.

Přidání omezení cizího klíče do tabulky

Create a T-SQL script to add a foreign key constraint on `SalesLT.SalesOrderDetail.ProductID` referencing `SalesLT.Product.ProductID`.

Vygenerování skriptu migrace pro přidání cizího klíče

Generate a Sequelize migration to add a foreign key from `SalesLT.SalesOrderDetail.ProductID` to `SalesLT.Product.ProductID`, assuming both exist.

Použijte vložená doporučení od GitHub Copilota

Můžete začít zadáním dotazu T-SQL do nového okna editoru, například SELECT * FROM SalesLT.Customera sledovat vložené návrhy, které poskytuje GitHub Copilot. Návrhy se zobrazí při psaní a můžete je přijmout stisknutím Tab nebo Enter.

Případně můžete zadat stejný dotaz přímo SELECT * FROM SalesLT.Customerdo editoru. Pak ji zvýrazněte, aby se zobrazila ✨ ikona inteligentní akce , která se zobrazí vedle zvýrazněného dotazu. Tato ikona poskytuje rychlý přístup k dalším možnostem GitHub Copilotu, jako Modify using Copilot je úprava dotazu, /doc generování dokumentace nebo možnost klást obecné otázky GitHub Copilotu související s dotazem.

Snímek obrazovky znázorňující ikonu inteligentní akce pro úpravy dotazů SQL pomocí GitHub Copilotu v editoru Visual Studio Code

Když vyberete Zkontrolovat pomocí GitHub Copilotu, zobrazí se vložené doporučení podobné tomuto:

Snímek obrazovky znázorňující vložené doporučení z GitHub Copilotu pro optimalizaci dotazu SQL v editoru Visual Studio Code

GitHub Copilot můžete vyvolat také pomocí zástupce (⌘+I pro macOS/ Ctrl+I pro Windows/Linux) a položit otázky nebo požádat o úpravy dotazu.

Snímek obrazovky znázorňující, jak vyvolat GitHub Copilot pomocí klávesové zkratky v editoru Visual Studio Code

Podělte se o své zkušenosti

Pokud nám chcete pomoct upřesnit a vylepšit GitHub Copilot pro rozšíření MSSQL, odešlete zpětnou vazbu pomocí následující šablony problému Na GitHubu: Váš názor na GitHub Copilot

Při odesílání zpětné vazby zvažte následující:

  • Otestované scénáře – Dejte nám vědět, na které oblasti jste se zaměřili, například na vytváření schématu, generování dotazů, zabezpečení, lokalizaci.

  • Co dobře fungovalo – popište všechny zážitky, které se cítily hladce, užitečné nebo překročily vaše očekávání.

  • Problémy nebo chyby – Zahrňte všechny problémy, nekonzistence nebo matoucí chování. Snímky obrazovky nebo nahrávky obrazovky jsou užitečné hlavně.

  • Návrhy ke zlepšení – Sdílejte nápady na zlepšení použitelnosti, rozšíření pokrytí nebo vylepšení odpovědí GitHub Copilotu.