SQL Server Management Studio'da GitHub Copilot için en iyi yöntemler

SQL Server Management Studio'daki (SSMS) GitHub Copilot, Transact-SQL (T-SQL) yazma ve düzenleme de dahil olmak üzere SSMS'deki iş akışınızda üretkenliğinizi hızlandırır. SSMS'de GitHub Copilot'dan en iyi şekilde yararlanmak için etkili bir şekilde işbirliği yapmayı öğrenmelisiniz. Her iş ortağı gibi SSMS'deki GitHub Copilot da net bir yön ve uygun bağlam verildiğinde en iyi performansı gösterir. Sohbet penceresinin en iyi şekilde kullanılması, SSMS'de GitHub Copilot deneyiminizin kalitesini de artırır.

Sohbet penceresi

Sohbet penceresinin simgeleri ve özellikleri Ask modunda ve Aracı modunda (önizleme) belgelenmiştir, ancak diğer önemli noktalar istemlere özeldir.

Öncelikle, sohbet penceresini sonuç penceresi olarak işlemeyin. GitHub Copilot'a şemanız veya verileriniz hakkında sorular sorduğunuzda, doğrudan sohbet penceresinde size bilgi döndürmek için bir sorgu yürütebilir. SSMS'deki GitHub Copilot, sorgu yürütülmeden önce sorgunun döndürdüğü satır sayısını belirlemez ve sorgu 1.000 satır döndürürse bu bilgileri sohbette görüntülemeye çalışır. Büyük sonuç kümeleri kolayca okunamaz ve sohbet penceresinde işlenemez.

SSMS'de GitHub Copilot'ın bilgileri döndürmek için sorguyu yazmasını istemek genellikle tercih edilir ve GitHub Copilot ile daha iyi bir etkileşim ve deneyim oluşturur.

Permissions

SQL Server Management Studio'de (SSMS) GitHub Copilot, oturum açmanızın bağlamı altında sorgular ve komutlar yürütür. En az ayrıcalık ilkesini uygulayın: kullanıcılara yalnızca erişmeleri gereken belirli nesneler için ihtiyaç duydukları SELECT, EXECUTE ve diğer izinleri verin. SSMS 22.7'den başlayarak, yöneticiler Copilot oluşturulan sorguların kullanıcının kendi izinleri yerine ayrılmış, en az ayrıcalıklı bir hesap altında çalışmasını sağlayan yürütme bağlamını yapılandırabilir. Bu yapılandırma, veritabanının içinde belirtilen bir veritabanı CONSTITUTION.mdkullanıcısını veya SQL oturum açma bilgilerini kullanır. Daha fazla bilgi için bkz. SQL Server Management Studio’da GitHub Copilot için Yürütme bağlamı.

Bağlam

Yapay zeka modeli şemanızı, adlandırma kurallarınızı, iş kurallarınızı veya siz söylemediğiniz sürece hangi sunucuyu işaret ettiğinizi bilmez. Ne kadar doğru bağlam sağlarsanız yanıt o kadar iyi olur. SSMS'de GitHub Copilot için bağlam birden çok kaynaktan gelir: etkin veritabanı bağlantısı (sunucu, veritabanı), açık sorgu düzenleyicileri, kılavuzda sonuç, veritabanı yönergeleri, veritabanı anayasası ve yapılandırdığınız özel yönergeler. Model tablo yapılarını, dizin kapsamını ve ilgili iş yükü desenlerini bildiğinden "bu sorguyu iyileştir" gibi bir istem önemli ölçüde iyileştirir. Net amaç modele ne yapmak istediğinizi, doğru bağlam ise nerede çalıştığınızı ve neyle çalıştığınızı belirtir. Birlikte, tahminleri ortadan kaldırır ve yanlış bilgileri azaltırlar. Bu, özellikle çıktı üretim verilerine karşı yürütülebilecek T-SQL olduğunda önemlidir. Daha fazla bilgi için bkz. SQL Server Management Studio'da GitHub Copilot için bağlam ekleme.

Consistency

Copilots kullanıcıları arasında yaygın bir hayal kırıklığı, yanıtlarda tutarsızlıktır. Yapay zeka yanıtları, belirleyici değil olasılıksal olarak oluşturulduğundan tutarsız olabilir. Özel olarak, aynı soru sorulduğunda model bağlam, yapılandırma veya iç rastgelelikteki ince varyasyonlara göre farklı, ancak yine de mantıklı, sözcük veya cümle yapısı seçebilir. Buna ek olarak, yapay zeka modelleri bir istemin birçok olası yorumunu tartdığından, ifade veya zamanlamadaki küçük değişiklikler farklı sonuçlara yol açabilir. Bu değişkenlik, yapay zekayı bu kadar esnek ve güçlü yapan şeyin bir parçasıdır, ancak istemler en uygun şekilde kurulmazsa öngörülemeyen sonuçlara da yol açabilir.

Komut istemi yazma

Yapay zeka ile çalışmanın doğası gereği göndermek için komutlar yazmak ve performans optimize etme gibi bir sanat ve bilimdir. İyi istemler yazmak için istem mühendisi olmanız gerekmez. Ancak yapay zekayla etkileşimde bulunurken genel yönergelerin farkında olmanız gerekir.

Örneğin, SSMS'de GitHub Copilot'a sorarsanız Find the hottest tables in the database, bu istem bağlamında en sık karşılaşılan tabloların en yoğun veya en etkin tablolar olduğunu anlamayabilir. Bunun yerine List the top 10 tables in the database that have the most reads deneyin.

İstem yazma için genel öneriler şunlardır:

Tavsiye Ayrıntılar
Doğal dil kullanma Özel kelime dağarcığı kullanmanız gerekmez, ancak resmi olmayan ifadelerden, argodan ve jargondan kaçınmaya çalışın.
Net ve özel olun GitHub Copilot'ın ne sorduğunuz konusunda net olması için yeterli ayrıntı sağlayın.
Bağlam sağlama SSMS'deki GitHub Copilot' ın sorgu düzenleyicisi bağlantısına dayalı bağlantı ve veritabanı bağlamı vardır, ancak zaman çerçevesi veya belirli veritabanı nesneleri gibi ek bağlamlar sağlayabilirsiniz.
Örnekleri kullanma gibi Modify the last query to order the results by CustomerIDönceki yanıtlar üzerinde derleme yapın.
Çıkış biçimini tanımlama GitHub Copilot metin, tablo veya liste biçiminde bilgi sağlayabilir. Sizin için seçim yapar, ancak bilgilerin belirli bir formatta döndürülmesini özellikle isteyebilirsiniz.

Örnek istemler:

Tavsiye Kaçın Deneme
Doğal dil kullanma Yo cook me up something cool for grabbing sales data Write a SQL query that selects the top 10 most recent orders from the Sales.Orders table
Net ve özel olun Okay, so I've got this thing where I need to maybe get some kind of report or output or whatever for yesterday's stuff but like only for users that are new but not too new, if that makes sense Write a query to return users who registered yesterday and have not yet made a purchase
Bağlam sağlama List western schools with no language reqs List schools in the US-West geo that have a lang_req value of 0
Örnekleri kullanma Write a query to get recent customer info Write a query to get customer ID, name, and total number of orders for the last 10 business days ordered by total desc
Çıkış biçimini tanımlama Give me hospital locations and size with the busiest emergency rooms List the hospitals with the busiest emergency rooms in table format and include city, state, and size