Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Ekstensi PostgreSQL untuk Visual Studio Code mencakup integrasi GitHub Copilot, meningkatkan alur kerja database Anda dengan pengembangan yang dibantu AI. Setelah tersambung ke database PostgreSQL, Copilot mengakses informasi kontekstual dari koneksi langsung Anda. Akses ini memungkinkan peserta @pgsql Copilot Chat menghasilkan kueri dan wawasan SQL yang akurat dan sadar skema, menyederhanakan pengembangan dan meminimalkan peralihan konteks dalam Visual Studio Code.
Peserta @pgsql bekerja terhadap database apa pun yang dapat disambungkan oleh ekstensi, termasuk:
- kluster Azure HorizonDB.
Saat terhubung ke kluster HorizonDB, Copilot mengetahui ekstensi khusus HorizonDB yang diinstal pada database (seperti pgvector, pg_diskann, azure_ai, dan age) dan dapat menghasilkan perintah dan SQL yang memanfaatkannya.
Prerequisites
Sebelum memulai, verifikasi bahwa Anda memiliki alat dan sumber daya yang tepat yang diunduh dan diinstal.
- Visual Studio Code terinstal di komputer Anda.
- Database PostgreSQL yang diinstal secara lokal, atau dihosting di Buat kluster HorizonDB Azure.
- Ekstensi PostgreSQL telah terpasang di Visual Studio Code.
- ekstensi GitHub Copilot.
- Ekstensi GitHub Copilot Chat terinstal.
- Akun Azure untuk menyambungkan ke database yang dihosting cloud (opsional).
Menginstal ekstensi GitHub Copilot dan GitHub Copilot Chat
Jika Anda belum menginstal ekstensi GitHub Copilot di Visual Studio Code:
- Pilih ikon Ekstensi di Visual Studio Code, cari GitHub Copilot, dan pilih Instal.
- Ekstensi GitHub Copilot Chat secara otomatis diinstal bersama dengan GitHub Copilot.
Masuk ke GitHub di Visual Studio Code
- Pastikan Anda memiliki akun GitHub dan langganan GitHub Copilot aktif:
- Di Visual Studio Code, pilih ikon Account dan pilih Sign dengan GitHub untuk menggunakan GitHub Copilot.
Mulai menggunakan GitHub Copilot
Ikuti langkah-langkah untuk mulai menggunakan GitHub Copilot dengan ekstensi PostgreSQL Visual Studio Code.
- Klik kanan pada database PostgreSQL di Object Explorer dan pilih Chat dengan database ini. Ini berfungsi untuk koneksi apa pun - PostgreSQL lokal atau Azure HorizonDB.
- Jika diminta, pilih Izinkan untuk mengaktifkan GitHub Copilot untuk mengakses konteks koneksi database.
- Saat antarmuka obrolan Copilot terbuka, mulai ajukan pertanyaan dengan menggunakan
@pgsqlawalan untuk menentukan bahwa Anda ingin berinteraksi dengan database PostgreSQL.
Coba perintah seperti:
@pgsql tell me about the tables in the HR schema
Copilot merespons dengan deskripsi terperinci tentang tabel skema Anda.
Menyambungkan ke titik akhir HorizonDB yang tepat
Karena kluster Azure HorizonDB memiliki dua titik akhir, koneksi yang Anda gunakan untuk mulai mengobrol menentukan titik akhir tempat SQL yang dihasilkan Copilot akan dijalankan:
- Read/write endpoint - Gunakan koneksi ini saat Anda ingin Copilot menyusun draf, memodifikasi, atau menjalankan pernyataan yang mengubah data atau skema, atau yang harus membaca status commit terbaru.
- Endpoint pembaca - Gunakan koneksi ini saat Anda ingin Copilot menyusun dan menjalankan kueri hanya-baca yang mendapat manfaat dari scale-out dengan penyeimbangan beban di seluruh replika HA (misalnya, analitik eksploratif atau prompt pelaporan).
Jika Copilot menghasilkan perintah penulisan saat Anda tersambung ke endpoint pembaca, alihkan koneksi aktif ke endpoint baca/tulis sebelum menyetujui eksekusi.
Menggunakan kemampuan baca dan tulis
Integrasi GitHub Copilot untuk ekstensi PostgreSQL di Visual Studio Code mendukung operasi baca dan tulis. Anda dapat mengkueri data, memodifikasi skema, dan memperbarui rekaman langsung dari editor dengan saran yang didukung AI yang memperhitungkan konteks koneksi langsung.
Note
Integrasi GitHub Copilot Chat untuk PostgreSQL dapat membuat perubahan pada database Anda. Gunakan fitur ini dengan hati-hati, terutama di lingkungan penahapan dan produksi. Selalu tinjau kode SQL yang dihasilkan sebelum menjalankannya, dan pertimbangkan untuk mengujinya di lingkungan yang aman terlebih dahulu. Pada Azure HorizonDB, pastikan juga operasi tulis diarahkan ke endpoint baca/tulis - endpoint pembaca bersifat baca-saja.
Coba perintah yang lebih lanjut:
@pgsql convert the hr.employees table to use a JSONB column for the address field
Copilot dapat merespons dengan saran SQL dan meminta izin untuk melakukan perubahan.
Untuk menyetujui eksekusi:
@pgsql Yes, please make the JSONB column for me
Kemudian Copilot meminta konfirmasi:
@pgsql Yes, I confirm
Gunakan opsi menu konteks
Anda dapat memilih kode SQL di editor dan klik kanan untuk mengakses opsi menu konteks GitHub Copilot seperti Menjelaskan Kueri, Menulis Ulang Kueri, atau Menganalisis Performa Kueri. Pada HorizonDB, penjelasan dan saran penulisan ulang juga mempertimbangkan indeks khusus HorizonDB (seperti indeks vektor pg_diskann) jika tersedia.
Ide lainnya dan resep prompt
Bagian berikut ini memperlihatkan perintah konsep yang dapat Anda coba atau ubah agar sesuai dengan konteks database dan lingkungan pengembangan Anda.
Pengoptimalan kueri
Gunakan perintah ini untuk memandu Copilot dalam mengatasi tantangan pengoptimalan kueri tertentu.
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.'
Pengoptimalan performa
Gunakan perintah ini untuk memandu Copilot dalam mengatasi tantangan pengoptimalan performa tertentu.
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?
Pengembangan aplikasi
Gunakan perintah ini untuk memandu Copilot dalam mengatasi tantangan pengembangan aplikasi.
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.
Beban kerja AI di Azure HorizonDB
Saat terhubung ke kluster HorizonDB, Anda dapat menggunakan Copilot untuk membangun kemampuan AI HorizonDB - pgvector, pg_diskann (dengan Pemfilteran Tingkat Lanjut), dan Fungsi AI azure_ai yang didukung oleh AI Model Management (pratinjau terbatas) atau penyebaran Microsoft Foundry Anda sendiri.
@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.
Peluasan skala baca
Saat terhubung ke reader endpoint dari cluster HorizonDB, Anda dapat meminta Copilot untuk membuat draf beban kerja baca-saja yang memanfaatkan replika HA dengan penyeimbangan beban:
@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.
Pembersihan
Untuk memastikan pengalaman yang lancar, bersihkan sumber daya atau konfigurasi sementara yang Anda buat selama panduan cepat ini. Contohnya:
- Putuskan sambungan dari database PostgreSQL di Visual Studio Code.
- Hapus semua database pengujian, tabel, atau indeks (termasuk indeks
pg_diskannapa pun) yang Anda buat selama sesi. - Tutup koneksi terbuka apa pun untuk menghindari penggunaan sumber daya yang tidak perlu.
Tanggapan dan dukungan
Untuk bug, permintaan fitur, dan masalah, gunakan alat umpan balik bawaan di Visual Studio Code. Anda dapat menyelesaikan umpan balik ini melalui menu Bantuan Visual Studio Code atau palet perintah PGSQL.
-
Menu Bantuan
- Pergi ke Bantuan > Laporkan Masalah
-
Palet perintah
- Buka Palet Perintah dengan
Ctrl + Shift + Pdan jalankan:PGSQL: Report Issue
- Buka Palet Perintah dengan