Hızlı Başlangıç: Katılımcıyla sohbet ( @mssql soru modu)

Sohbet katılımcısı @mssql GitHub Copilot Chat konuşmalarınıza şemaya duyarlı SQL yardımı getirir. Soru modunda, bağlı veritabanınız hakkında doğal dilde bir konuşmanız @mssql olur: tabloları ve ilişkileri keşfedin, Transact-SQL (T-SQL) sorguları yazın, geçişler oluşturun ve var olan nesnelerin açıklamalarını alın. Soru modu yalnızca okunurdur. Soruları yanıtlar ve kod önerir, ancak dosyaları hiçbir zaman değiştirmez.

Tip

Yanıta veya tek seferlik sorguya ihtiyacınız olduğunda sor modunu kullanın. Araç yürütmeyi içeren çok adımlı iş akışları için aracı modunu kullanın. Belirli dosyalarda hedeflenen değişikliklere ihtiyacınız olduğunda düzenleme modunu kullanın.

Önemli çıkarımlar

  • @mssql etkin bir veritabanı bağlantınız olduğunda ask modunda şemayı algılar .
  • Sohbet katılımcısı şema meta verilerini (tablolar, sütunlar, ilişkiler) okur ve her isteğe ekler.
  • Sorma modu, konuşmaya dayalıdır ve durum bilgisi tutmaz. Her ileti yeni bir sorudur.
  • Özel yönergeleriniz her soru modu yanıtı için geçerlidir.

Prerequisites

Bir veritabanına bağlı olduğunuzdan ve MSSQL uzantısıyla etkin bir düzenleyici penceresinin açık olduğundan emin olun. Bağlandığınızda, sohbet katılımcısı @mssql veritabanı ortamınızın bağlamını anlar ve doğru, bağlama duyarlı öneriler verebilir. Bir veritabanına bağlanmıyorsanız, sohbet katılımcısının anlamlı yanıtlar sağlamak için şeması veya veri bağlamı yoktur.

Aşağıdaki örneklerde, AdventureWorksLT2022 giriş sayfasından indirebileceğiniz örnek veritabanı kullanılır.

En iyi sonuçları elde etmek için tablo ve şema adlarını kendi ortamınızla eşleşecek şekilde ayarlayın.

Sohbetin ön ekini içerdiğinden @mssql emin olun. Örneğin, @mssql yazdıktan sonra sorunuzu ya da isteminizi yazın. Bu ön ek, sohbet katılımcısının SQL ile ilgili yardım istediğinizi anlamasını sağlar.

Katılımcıyla sohbet edin @mssql

@mssql GITHub Copilot Chat kullanarak SQL geliştirme iş akışınıza akıllı ve bağlam açısından duyarlı yardım getirin. sorgular yazarken, şemayı keşfederken veya geçiş betikleri oluştururken GitHub Copilot yanıtları bağlı veritabanınıza göre uyarlar.

Yaygın kullanım örnekleri ve örnekler aşağıda verilmiştir.

Veritabanı şemanızdaki nesneleri listeleme veya keşfetme

Tablolar, sütunlar, şemalar ve nesne meta verileri hakkında sorular sorun.

Nesneleri türe göre gruplandırma

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

Tablonun sütunlarını ve özelliklerini listeleme

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

Veritabanındaki tabloları, görünümleri ve yordamları sayma

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

Sorgu yazma

Filtreleme, toplama ve birleştirmeler için yaygın SQL sorguları yazma konusunda yardım alın.

Son siparişlere göre müşterilerin listesini döndürme

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.

Müşteri başına ortalama sipariş toplamlarını hesaplama

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

Sorguyu başka bir sütunla güncelleştirme

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

İlişkileri veya kavramları açıklama

Şema ilişkilerinin, sorgu mantığının veya T-SQL özelliklerinin basitleştirilmiş açıklamalarını isteyin.

Tablolar arasındaki yabancı anahtar ilişkilerini açıklama

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

Tablo ilişkilerini ve ilgili anahtarları açıklama

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

Vektör veri türlerini ve kullanım seçeneklerini açıklama

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

Geçiş veya tümleştirme kodu oluşturma

SQL veya nesne ilişkisel eşleme (ORM) geçiş betiklerini oluşturma konusunda yardım isteyin.

Tabloya yabancı anahtar kısıtlaması ekleme

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

Yabancı anahtar eklemek için geçiş betiği oluşturun

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

Entity Framework, Prisma, SQLAlchemy ve diğer çerçevelerde nesne ilişkisel eşleme (ORM) örnekleri için bkz. GitHub Copilot ile nesne ilişkisel eşleme tümleştirmeleri.

Soru modu ve ajan modu: hangisini kullanmalı

Scenario En iyi mod
"Bu saklı yordam ne yapar?" Sor modu
"500 ABD dolarının üzerindeki siparişleri bulmak için bir sorgu yazın" Sor modu
"LocalDev profilime bağlan ve veritabanlarını listele" Aracı modu
"Sales şemasındaki her tabloya denetim sütunları ekleme" Aracı modu
PRD'mden eksiksiz bir veri modeli tasarla Plan modu

Deneyiminizi paylaşma

MSSQL uzantısı için GitHub Copilot'ı geliştirmemize ve geliştirmemize yardımcı olmak için aşağıdaki GitHub sorun şablonunu kullanarak geri bildiriminizi gönderin: GitHub Copilot Geri Bildirimi

Geri bildirim gönderirken şunları dahil etmeyi göz önünde bulundurun:

  • Test edilen senaryolar: Şema oluşturma, sorgu oluşturma, güvenlik, yerelleştirme gibi odaklandığınız alanları bize bildirin.

  • İyi çalışan şeyler: Sorunsuz, yararlı veya beklentilerinizi aşan deneyimleri açıklayın.

  • Sorunlar veya hatalar: Tüm sorunları, tutarsızlıkları veya kafa karıştırıcı davranışları dahil edin. Ekran görüntüleri veya ekran kayıtları özellikle yararlıdır.

  • İyileştirme önerileri: Kullanılabilirliği geliştirmeye, kapsamı genişletmeye veya GitHub Copilot'un yanıtlarını geliştirmeye yönelik fikirleri paylaşın.