Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De PostgreSQL-extensie voor Visual Studio Code bevat GitHub Copilot integratie, waardoor uw databasewerkstromen worden verbeterd met ai-ondersteuning voor ontwikkeling. Nadat u verbinding hebt gemaakt met een PostgreSQL-database, heeft Copilot toegang tot contextuele informatie vanuit uw liveverbinding. Met deze toegang kan de @pgsql Copilot Chat deelnemer nauwkeurige, schemabewuste SQL-query's en -inzichten genereren, ontwikkeling stroomlijnen en contextwisseling binnen Visual Studio Code minimaliseren.
De @pgsql deelnemer werkt met elke database waarmee de extensie verbinding kan maken, waaronder:
- Azure HorizonDB-clusters.
Wanneer er verbinding is met een HorizonDB-cluster, is Copilot op de hoogte van de HorizonDB-specifieke extensies die zijn geïnstalleerd op de database (zoals pgvector, pg_diskann, azure_ai en age) en kunnen prompts en SQL genereren die hiervan profiteren.
Prerequisites
Controleer voordat u begint of u de juiste hulpprogramma's en resources hebt gedownload en geïnstalleerd.
- Visual Studio Code is geïnstalleerd op uw computer.
- Een PostgreSQL-database die lokaal is geïnstalleerd of wordt gehost in Maak een Azure HorizonDB-cluster.
- De PostgreSQL-extensie is geïnstalleerd in Visual Studio Code.
- GitHub Copilot extension.
- GitHub Copilot Chat-extensie geïnstalleerd.
- Azure-account voor het maken van verbinding met in de cloud gehoste databases (optioneel).
GitHub Copilot en GitHub Copilot Chat-extensies installeren
Als u de GitHub Copilot-extensie nog niet hebt geïnstalleerd in Visual Studio Code:
- Selecteer het pictogram Extensies in Visual Studio Code, zoek naar GitHub Copilot en selecteer Installeren.
- De GitHub Copilot Chat-extensie wordt automatisch geïnstalleerd samen met GitHub Copilot.
Aanmelden bij GitHub in Visual Studio Code
- Zorg ervoor dat u een GitHub-account en een actief GitHub Copilot-abonnement hebt:
- Selecteer in Visual Studio Code het pictogram Account en kies Aangetekend met GitHub om GitHub Copilot te gebruiken.
Aan de slag met GitHub Copilot
Volg de stappen om GitHub Copilot te gebruiken met de PostgreSQL Visual Studio Code-extensie.
- Klik met de rechtermuisknop op een PostgreSQL-database in de Objectverkenner en selecteer Chat met deze database. Dit werkt voor elke verbinding: lokale PostgreSQL of Azure HorizonDB.
- Als u hierom wordt gevraagd, selecteert u Toestaan om GitHub Copilot in te schakelen voor toegang tot de context van de databaseverbinding.
- Wanneer de Copilot-chatinterface wordt geopend, begint u vragen te stellen met behulp van het
@pgsqlvoorvoegsel om op te geven dat u wilt communiceren met de PostgreSQL-database.
Probeer een prompt zoals:
@pgsql tell me about the tables in the HR schema
Copilot reageert met een gedetailleerde beschrijving van de tabellen van uw schema.
Verbinding maken met het juiste HorizonDB-eindpunt
Omdat een Azure HorizonDB-cluster twee eindpunten heeft, bepaalt de verbinding waarmee u het chatgesprek start op welk eindpunt de door Copilot gegenereerde SQL wordt uitgevoerd:
- Eindpunt lezen/schrijven: gebruik deze verbinding als u wilt dat Copilot instructies ontwerpt, wijzigt of uitvoert die gegevens of schema wijzigen of die de meest recente vastgelegde status moeten lezen.
- Leeseindpunt - Gebruik deze verbinding wanneer u Copilot alleen-lezenquery’s wilt laten opstellen en uitvoeren die profiteren van taakverdeling over HA-replica’s voor uitschaling (bijvoorbeeld verkennende analyses of rapportageaanvragen).
Als Copilot een schrijfinstructie genereert terwijl u verbonden bent met het eindpunt van de lezer, schakelt u de actieve verbinding over naar het eindpunt lezen/schrijven voordat u de uitvoering goedkeurt.
Lees- en schrijfmogelijkheden gebruiken
De GitHub Copilot-integratie voor de PostgreSQL-extensie in Visual Studio Code ondersteunt zowel lees- als schrijfbewerkingen. U kunt query's uitvoeren op gegevens, schema's wijzigen en records rechtstreeks vanuit de editor bijwerken met door AI gemaakte suggesties waarmee rekening wordt gehouden met de context van de liveverbinding.
Note
De GitHub Copilot Chat-integratie voor PostgreSQL kan wijzigingen aanbrengen in uw database. Gebruik deze functie met voorzichtigheid, met name in faserings- en productieomgevingen. Controleer altijd de gegenereerde SQL-code voordat u deze uitvoert en overweeg deze eerst te testen in een veilige omgeving. Zorg er in Azure HorizonDB ook voor dat schrijfbewerkingen gericht zijn op het eindpunt gelezen/schrijven: het eindpunt van de lezer heeft het kenmerk Alleen-lezen.
Probeer een geavanceerdere prompt:
@pgsql convert the hr.employees table to use a JSONB column for the address field
Copilot kan reageren met SQL-suggesties en toestemming vragen om wijzigingen aan te brengen.
Uitvoering goedkeuren:
@pgsql Yes, please make the JSONB column for me
Vervolgens vraagt Copilot om bevestiging:
@pgsql Yes, I confirm
Contextmenuopties gebruiken
U kunt SQL-code selecteren in de editor en met de rechtermuisknop klikken om toegang te krijgen tot gitHub Copilot-contextmenuopties, zoals Query uitleggen, Query herschrijven of Queryprestaties analyseren. In HorizonDB zijn de uitleg en herschrijfsuggesties ook van toepassing op HorizonDB-specifieke indexen (zoals pg_diskann vectorindexen) wanneer ze aanwezig zijn.
Andere ideeën en prompt recepten
In de volgende secties ziet u conceptprompts die u kunt proberen of aanpassen aan uw databasecontext en ontwikkelomgeving.
Queryoptimalisatie
Gebruik deze prompts om Copilot te begeleiden bij het aanpakken van specifieke uitdagingen met betrekking tot queryoptimalisatie.
I'm working on optimizing my database for high-concurrency workloads. The table is called transactions with millions of records, and I'm experiencing deadlocks under a heavy load. Help me optimize my table schema and queries.
I need help writing a query. The data is stored in the orders table, which uses the columns customer_id, order_date, and total_price. I also need to include a rolling 3-month average of customer spending using a window function.
I'm getting this error: 'ERROR: column "orders.total_price" must appear in the GROUP BY clause or be used in an aggregate function.'
Optimalisatie van prestaties
Gebruik deze aanwijzingen om Copilot te begeleiden bij het aanpakken van specifieke prestatieoptimalisatie-uitdagingen.
Provide the Explain Plan for my most recent query, and please explain each step.
Can you run some performance metrics on my database and tell me how it performs?
My orders table has 10 million records, and queries on customer_id and order_date are slow. How can I optimize indexing, partitioning, and schema design for performance?
App-ontwikkeling
Gebruik deze prompts om Copilot te begeleiden bij het aanpakken van uitdagingen bij het ontwikkelen van apps.
Generate a FastAPI endpoint to fetch orders from the ecom.orders table with pagination.
Generate an ETL pipeline script to clean and normalize the customer table data.
Generate a FastAPI project with my database using SQLAlchemy.
AI-werkbelastingen op Azure HorizonDB
Wanneer u bent verbonden met een HorizonDB-cluster, u kunt Copilot gebruiken om de AI-mogelijkheden van HorizonDB te bouwen: pgvector, pg_diskann (met geavanceerd filteren) en de azure_ai AI-functies die worden ondersteund door AI-modelbeheer (beperkte preview) of uw eigen Microsoft Foundry-implementaties.
@pgsql Create a products table with a description column and a vector(1536) embedding column. Then write a query that populates the embedding column for any rows where it's NULL using azure_openai.create_embeddings with the default-embedding managed model.
@pgsql Build a pg_diskann index on the products.embedding column using vector_cosine_ops, then write a similarity search that finds the top 10 products with average_rating > 4.5 and price between 100 and 200 - using DiskANN Advanced Filtering so the WHERE clause is evaluated during the vector search.
@pgsql Use azure_ai.extract() to pull product and sentiment out of the review_text column of the product_reviews table, and azure_ai.is_true() to flag reviews that mention shipping issues.
@pgsql I have a Microsoft Foundry deployment of gpt-5 in my own subscription. Show me how to register it with model_registry.model_add as 'gpt-5-byom' and then call azure_ai.generate() with that alias to rewrite the comment_text column of user_comments to be more polite.
Uitschalen lezen
Wanneer u verbinding hebt met het reader-endpoint van een HorizonDB-cluster, kunt u Copilot vragen om leesworkloads op te stellen die gebruikmaken van taakverdelende HA-replica’s:
@pgsql Generate a reporting query against the orders and customers tables that aggregates monthly revenue by region and customer segment. Make sure the query is read-only so it's safe to run against the HorizonDB reader endpoint.
Schoonmaken
Om een soepele ervaring te garanderen, schoont u tijdelijke resources of configuraties op die u tijdens deze quickstart hebt gemaakt. Voorbeeld:
- Verbreek de verbinding met de PostgreSQL-database in Visual Studio Code.
- Verwijder testdatabases, tabellen of indexen (inclusief
pg_diskannindexen) die u tijdens de sessie hebt gemaakt. - Sluit alle geopende verbindingen om onnodig resourcegebruik te voorkomen.
Feedback en ondersteuning
Voor bugs, functieaanvragen en problemen gebruikt u het ingebouwde feedbackhulpprogramma in Visual Studio Code. U kunt deze feedback voltooien via het Menu Help van Visual Studio Code of het PGSQL-opdrachtenpalet.
-
Help-menu
- Ga naar Help Probleem Rapporteren>
-
Opdrachtpalet
- Open het opdrachtenpalet met
Ctrl + Shift + Pen voer het volgende uit:PGSQL: Report Issue
- Open het opdrachtenpalet met