Partager via


Démarrage rapide : Configurer l’extension GitHub Copilot pour PostgreSQL en préversion de Visual Studio Code

L’extension PostgreSQL pour Visual Studio Code inclut désormais l’intégration de GitHub Copilot, améliorant vos flux de travail de base de données avec le développement assisté par l’IA. Copilot accède aux informations contextuelles à partir de votre connexion active, une fois connecté à une base de données PostgreSQL. Cela permet au participant Copilot Chat @pgsql de générer des insights et des requêtes SQL précis et basés sur un schéma, ce qui simplifie le développement et réduit les changements de contexte dans Visual Studio Code.

Conditions préalables

Avant de commencer, vérifiez que vous disposez des outils et ressources appropriés téléchargés et installés.

Ces outils et ressources vous aident à suivre cet article et à tirer le meilleur parti de l’intégration de GitHub Copilot pour l’extension PostgreSQL dans Visual Studio Code.

Installer les extensions GitHub Copilot et GitHub Copilot Chat

  1. Si l’extension GitHub Copilot n’est pas déjà installée dans Visual Studio Code :

  2. Sélectionnez l’icône Extensions dans Visual Studio Code, recherchez GitHub Copilot, puis sélectionnez Installer.

  3. L’extension GitHub Copilot Chat est automatiquement installée avec GitHub Copilot.

Se connecter à GitHub dans Visual Studio Code

  1. Vérifiez que vous disposez d’un compte GitHub et d’un abonnement GitHub Copilot actif :

  2. Dans Visual Studio Code, sélectionnez l’icône Compte et choisissez Se connecter avec GitHub pour utiliser GitHub Copilot.

Bien démarrer avec GitHub Copilot

Suivez les étapes pour commencer à utiliser GitHub Copilot avec l’extension Visual Studio Code PostgreSQL.

  1. Cliquez avec le bouton droit sur une base de données PostgreSQL et sélectionnez Discuter avec cette base de données.

  2. Si vous y êtes invité, sélectionnez Autoriser pour permettre à GitHub Copilot d’accéder au contexte de connexion de la base de données.

  3. Lorsque l’interface de conversation Copilot s’ouvre, vous pouvez commencer à poser des questions à l’aide du @pgsql préfixe pour spécifier que vous souhaitez interagir avec la base de données PostgreSQL.

Essayez une requête comme celle-ci :

@pgsql tell me about the tables in the HR schema

Capture d’écran de la réponse Copilot Chat montrant une répartition détaillée des tables et des colonnes dans le schéma RH d’une base de données PostgreSQL.

  1. Copilot répond avec une description détaillée des tables de votre schéma.

Utilisation des fonctionnalités de lecture/écriture

L’intégration de GitHub Copilot pour l’extension PostgreSQL dans Visual Studio Code permet des fonctionnalités de lecture et d’écriture transparentes, ce qui permet aux développeurs d’interagir plus efficacement avec leurs bases de données. En tirant parti des suggestions basées sur l’IA, vous pouvez effectuer des tâches telles que l’interrogation de données, la modification de schémas et la mise à jour des enregistrements directement à partir de l’éditeur. Cette fonctionnalité simplifie les opérations complexes, réduit les efforts manuels et améliore la productivité tout en conservant la précision et la sensibilisation au contexte.

Remarque

L’intégration de GitHub Copilot Chat pour PostgreSQL est un outil puissant qui peut apporter des modifications à votre base de données. Il est important d’utiliser cette fonctionnalité avec précaution, en particulier dans les environnements intermédiaires et de production. Passez toujours en revue le code SQL généré avant de l’exécuter et envisagez de le tester dans un environnement sécurisé en premier.

Essayez une requête plus avancée.

@pgsql convert the hr.employees table to use a JSONB column for the address field

Copilot peut répondre avec des suggestions SQL et demander l’autorisation d’apporter des modifications.

Pour approuver l’exécution :

@pgsql Yes, please make the JSONB column for me

Copilot demande ensuite la confirmation :

@pgsql Yes, I confirm

Utilisation des options de menu contextuel

  • Vous pouvez sélectionner du code SQL dans l’éditeur et cliquer avec le bouton droit pour accéder aux options de menu contextuel De GitHub Copilot, telles que Expliquer la requête, réécrire la requête ou analyser les performances des requêtes.

Idées supplémentaires et recettes rapides

Il y a beaucoup de possibilités et d'actions que vous pouvez réaliser avec GitHub Copilot pour PostgreSQL - la seule limite est votre imagination ! Pour faciliter le démarrage de certaines idées, voici quelques invites de concept que vous pouvez essayer ou modifier pour correspondre à votre contexte de base de données et à votre environnement de développement :

Optimisation des requêtes

Voici quelques invites que vous pouvez utiliser pour guider Copilot en répondant à des défis spécifiques en matière d’optimisation des requêtes, ce qui vous aide à réaliser des opérations de base de données efficaces et fiables.

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.

Optimisation des performances

Voici quelques invites que vous pouvez utiliser pour guider Copilot en répondant à des défis spécifiques en matière d’optimisation des performances, ce qui vous aide à réaliser des opérations de base de données plus rapides et plus efficaces.

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?

Développement d’application

Voici quelques suggestions que vous pouvez utiliser pour guider Copilot dans la résolution des défis du développement d’applications.

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.

Nettoyage

Pour garantir une expérience fluide, nettoyez toutes les ressources ou configurations temporaires créées au cours de ce processus rapide. Par exemple:

  • Déconnectez-vous de la base de données PostgreSQL dans Visual Studio Code.
  • Supprimez toutes les bases de données de test ou tables créées pendant la session.
  • Fermez les connexions ouvertes pour éviter toute utilisation inutile des ressources.

Commentaires et support

Pour les bogues, les demandes de fonctionnalités et les problèmes, utilisez l’outil de commentaires intégré dans Visual Studio Code. Vous pouvez effectuer cette opération via le menu Aide de VS Code ou la palette de commandes PGSQL.

  • Menu Aide

    • Accéder à Aide > Signaler un problème
  • Palette de commandes

    • Ouvrez la palette de commandes avec Ctrl + Shift + P et exécutez : PGSQL: Report Issue