次の方法で共有


クイック スタート: Visual Studio Code プレビューで GitHub Copilot for PostgreSQL 拡張機能を構成する

Visual Studio Code 用 PostgreSQL 拡張機能に GitHub Copilot 統合が含まれるようになり、AI 支援開発を使用してデータベース ワークフローが強化されました。 Copilot は、PostgreSQL データベースに接続されると、ライブ接続からコンテキスト情報にアクセスします。 これにより、 @pgsql Copilot チャット参加者は、正確でスキーマに対応した SQL クエリと分析情報を生成し、開発を合理化し、Visual Studio Code 内でのコンテキスト切り替えを最小限に抑えることができます。

[前提条件]

開始する前に、適切なツールとリソースがダウンロードおよびインストールされていることを確認します。

これらのツールとリソースは、この記事に従い、Visual Studio Code の PostgreSQL 拡張機能の GitHub Copilot 統合を最大限に活用するのに役立ちます。

GitHub Copilot と GitHub Copilot Chat 拡張機能をインストールする

  1. Visual Studio Code に GitHub Copilot 拡張機能がまだインストールされていない場合:

  2. Visual Studio Code で [拡張機能 ] アイコンを選択し、 GitHub Copilot を検索して、[インストール] を選択 します

  3. GitHub Copilot チャット拡張機能は、GitHub Copilot と共に自動的にインストールされます。

Visual Studio Code で GitHub にサインインする

  1. GitHub アカウントとアクティブな GitHub Copilot サブスクリプションがあることを確認します。

  2. Visual Studio Code で、[ アカウント ] アイコンを選択し、[ GitHub でサインイン] を選択して GitHub Copilot を使用します。

GitHub Copilot の概要

手順に従って、PostgreSQL Visual Studio Code 拡張機能で GitHub Copilot の使用を開始します。

  1. PostgreSQL データベースを右クリックし、[ このデータベースとのチャット] を選択します。

  2. メッセージが表示されたら、[ 許可 ] を選択して GitHub Copilot がデータベース接続コンテキストにアクセスできるようにします。

  3. Copilot チャット インターフェイスが開いたら、 @pgsql プレフィックスを使用して質問を開始し、PostgreSQL データベースと対話することを指定できます。

次のようなプロンプトを試してください。

@pgsql tell me about the tables in the HR schema

PostgreSQL データベースの HR スキーマ内のテーブルと列の詳細な内訳を示す Copilot Chat 応答のスクリーンショット。

  1. Copilot は、スキーマのテーブルの詳細な説明で応答します。

読み取り/書き込み機能の使用

Visual Studio Code の PostgreSQL 拡張機能用の GitHub Copilot 統合により、シームレスな読み取りと書き込みの機能が可能になり、開発者はデータベースをより効率的に操作できます。 AI を利用した提案を活用することで、データのクエリ、スキーマの変更、エディターからのレコードの直接更新などのタスクを実行できます。 この機能により、複雑な操作が簡素化され、手動作業が削減され、精度とコンテキスト認識を維持しながら生産性が向上します。

PostgreSQL 用の GitHub Copilot Chat 統合は、データベースに変更を加えることができる強力なツールです。 特にステージング環境と運用環境では、この機能を慎重に使用することが重要です。 生成された SQL コードを実行する前に必ず確認し、最初に安全な環境でテストすることを検討してください。

より高度なプロンプトを試してください。

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

Copilot は SQL の提案で応答し、変更を加えるアクセス許可を求める場合があります。

実行を承認するには:

@pgsql Yes, please make the JSONB column for me

その後、Copilot は確認を求めます。

@pgsql Yes, I confirm

コンテキスト メニュー オプションの使用

  • エディターで SQL コードを選択し、右クリックして、 Explain QueryRewrite QueryAnalyze Query Performance などの GitHub Copilot コンテキスト メニュー オプションにアクセスできます。

その他のアイデアとプロンプトのレシピ

GitHub Copilot for PostgreSQLでは、多くのプロンプトを使ってさまざまなアクションを実行できます。あなたの創造力が唯一の限界です! いくつかのアイデアをすぐに開始できるように、データベースコンテキストと開発環境に合わせて試したり変更したりできる概念プロンプトを次に示します。

クエリ最適化

ここでは、効率的で信頼性の高いデータベース操作を実現するために役立つ、特定のクエリ最適化の課題に対処する際に Copilot をガイドするために使用できるプロンプトをいくつか示します。

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.

パフォーマンスの最適化

ここでは、特定のパフォーマンス最適化の課題に対処する際に Copilot をガイドするために使用できるプロンプトをいくつか示します。これは、より高速で効率的なデータベース操作を実現するのに役立ちます。

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?

アプリ開発

ここでは、アプリ開発の課題に対処する際に Copilot をガイドするために使用できるプロンプトをいくつか示します。

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.

クリーンアップ

スムーズなエクスペリエンスを実現するには、このクイックスタートで作成した一時的なリソースまたは構成をクリーンアップします。 例えば次が挙げられます。

  • Visual Studio Code で PostgreSQL データベースから切断します。
  • セッション中に作成されたテスト データベースまたはテーブルを削除します。
  • 不要なリソースの使用を避けるために、開いている接続を閉じます。

フィードバックとサポート

バグ、機能要求、および問題については、Visual Studio Code の組み込みのフィードバック ツールを使用します。 これを完了するには、VS Code の [ヘルプ] メニューまたは PGSQL コマンド パレットを使用します。

  • ヘルプ メニュー

    • 問題の報告>ヘルプに移動する
  • コマンド パレット

    • Ctrl + Shift + Pでコマンド パレットを開き、次のコマンドを実行します。PGSQL: Report Issue