Sorgu düzenleyicisi ve IntelliSense

Visual Studio Code için PostgreSQL uzantısı IntelliSense tamamlamaları, klavye tabanlı sorgu yürütme, dışarı aktarma seçenekleri içeren bir sonuç kılavuzu ve yerleşik kod parçacıkları içeren bir sorgu düzenleyicisi sağlar. Sql'i standart bir VS Code düzenleyicisi sekmesine yazar ve IDE'den çıkmadan bağlı herhangi bir PostgreSQL sunucusuna karşı çalıştırırsınız.

Prerequisites

Sorgu düzenleyicisi açma

Yeni bir sorgu düzenleyicisini çeşitli yollarla açabilirsiniz:

  • Bağlantılar ağacında bir veritabanı düğümüne sağ tıklayın ve Yeni Sorgu'yu seçin.
  • Komut Paleti'nden (PGSQL: New Query) komutunu çalıştırın.
  • Uzantılı herhangi bir .sql dosyayı açın veya oluşturun.

Sorgu düzenleyicisi, SQL dil moduyla VS Code metin düzenleyicisini kullanır. Düzenleyiciyi bir sunucuya bağladığınızda, uzantı IntelliSense'i etkinleştirir ve sorgu yürütme komutlarını etkinleştirir.

Bağlanma ve bağlantıyı kesme

Sorgu düzenleyicisini veritabanı bağlantısıyla ilişkilendirmek için:

Eylem Windows / Linux macOS
Bağlan Ctrl+Shift+C Cmd+Shift+C
Bağlantıyı Kesmek Ctrl+Shift+D Cmd+Shift+D

PGSQL: Connect veya PGSQL: Disconnect komutlarını Komut Paleti'nden de çalıştırabilirsiniz.

Veritabanı bağlamını değiştirme

Sorgu yürütme için etkin veritabanı VS Code durum çubuğunda görünür. Farklı bir veritabanına geçmek için:

  1. Durum çubuğunda veritabanı adını seçin veya Komut Paleti'nden komutunu çalıştırın PGSQL: Change PostgreSQL Database .
  2. Seçiciden hedef veritabanını seçin.

Yeni veritabanı bağlamı, bu düzenleyicideki sonraki tüm sorgu yürütmeleri için geçerlidir.

Bağlantı durumu merceği

olduğunda pgsql.showConnectionStatusLenstrue (varsayılan), düzenleyici dosyanın üst kısmında geçerli bağlantı durumunu gösteren bir kod merceği görüntüler. Bağlanmak veya veritabanlarını değiştirmek için merceği seçin.

IntelliSense

IntelliSense, sorgu düzenleyicisine SQL yazarken bağlama duyarlı otomatik tamamlamalar sağlar. Uzantı tablolar, sütunlar, işlevler ve anahtar sözcükler önermek için bağlı veritabanı şemanızı analiz eder.

Siz yazarken IntelliSense otomatik olarak etkinleştirilir veya Ctrl+Ara Çubuğu (macOS'ta Cmd+Ara Çubuğu ) ile el ile tetikleyebilirsiniz. Aşağıdaki tamamlama türleri kullanılabilir:

Tamamlama türü Açıklama
Anahtar kelime SELECT, FROM, WHERE gibi SQL anahtar sözcükleri
Tablo / Görünüm Geçerli veritabanındaki tablolar ve görünümler
Column Sorguda başvurulan tabloların sütunları
Function Yerleşik ve kullanıcı tanımlı işlevler
Schema Veritabanındaki kullanılabilir şemalar
Katılma önerisi JOIN yabancı anahtar ilişkilerine dayalı koşullar

Bir tablo başvurusundan sonra JOIN yazdığınızda IntelliSense ilgili tabloları önerir ve yabancı anahtar ilişkilerine göre birleştirme koşulunu doldurur.

IntelliSense'i yapılandırma

IntelliSense'i pgsql.intelliSense.enableIntelliSense ayarıyla etkinleştirin veya devre dışı bırakın. IntelliSense varsayılan olarak etkindir.

IntelliSense önbelleğini yenileme

Veritabanı şemanızı değiştirirseniz (örneğin, tablo veya sütun ekleyerek) IntelliSense bu değişiklikleri yansıtmazsa önbelleği yenileyin:

  1. Komut Paleti'ni açın (Ctrl+Shift+P).
  2. PGSQL: Refresh IntelliSense Cache'i çalıştırın.

Şema geçişleri, DDL değişiklikleri veya geçerli düzenleyici oturumu dışında yapılan değişikliklerden sonra bu komutu kullanın.

Sorgu çalıştırma

Uzantı, bağlı veritabanınızda SQL sorguları çalıştırmanın birden çok yolunu sağlar.

Sorgu yürütme

Düzenleyicide SQL çalıştırmak için PostgreSQL Sorgusunu Yürüt seçeneğini kullanın. Belirli bir metni seçerseniz, yalnızca seçili metin çalışır. Hiçbir şey seçilmezse düzenleyicinin tüm içeriği çalıştırılır.

Eylem Windows / Linux macOS
PostgreSQL Sorgusunu Çalıştır Ctrl+Shift+E veya Shift+Enter Cmd+Shift+E veya Shift+Enter
Geçerli PostgreSQL Deyimini Yürüt Ctrl+Shift+Enter Ctrl+Shift+Enter

Geçerli PostgreSQL Deyimini Yürüt , geçerli imleç konumunda yalnızca SQL deyimini çalıştırır. Düzenleyicide birden çok deyiminiz varsa ve birini seçmeden çalıştırmak istiyorsanız bu komutu kullanın.

Sorguyu iptal et

Uzun süre çalışan bir sorguyu durdurmak için Komut Paleti'nden komutunu çalıştırın PGSQL: Cancel PostgreSQL Query . Durum çubuğunda sorgu çalışırken yürütme ilerleme durumu gösterilir.

PostgreSQL Sorgu Sonuçları paneli

Sorguyu çalıştırdıktan sonra sonuçlar, düzenleyicinin altındaki PostgreSQL Sorgu Sonuçları panelinde görüntülenir. Panelde sorgu türüne bağlı olarak en fazla üç sekme vardır.

Sonuçlar sekmesi

Sonuçlar sekmesi sonuç kılavuzunu görüntüler. Bir sorgu birden çok sonuç kümesi döndürdüğünde, her küme sekmede kendi ızgarasında görünür.

Sonuçlar kılavuzu verileri keşfetmek için şu özellikleri sağlar:

  • Sırala: Bir sütun başlığına sağ tıklayın ve Artan Düzende Sırala veya Azalan Düzende Sırala'yı seçin. Sıralamayı kaldırmak için Sırayı Temizle'yi seçin.
  • Filtre: Bir sütun üst bilgisine sağ tıklayın ve görüntülenen satırları daraltmak için Filtreyi Göster'i seçin.
  • Sütunları yeniden boyutlandırma: Genişliği ayarlamak için sütun kenarlıklarını sürükleyin veya sütunları görünür içeriğe göre otomatik boyutlandırmak için etkinleştirin pgsql.resultsGrid.autoSizeColumns (varsayılan olarak açık).
  • Satır numaralandırma: Satır numaraları kılavuzun sol tarafında görünür.
  • Arama: Kılavuzdaki değerleri bulmak için sonuçlar araç çubuğundaki arama alanını kullanın.

Birleştirilmiş sorgular ve daha geniş sonuç kümeleri aynı kılavuz deneyimini kullanır, böylece düzenleyiciden çıkmadan ilgili sütunları sıralayabilir, filtreleyebilir ve tarayabilirsiniz.

Verileri kopyalama

Kopyalama seçeneklerine erişmek için sonuçlar kılavuzuna sağ tıklayın:

Seçenek Açıklama
Tümünü Seç Sonuç kümesindeki tüm satırları seçme
Copy Seçili hücreleri panoya kopyalama
Üst Bilgilerle Kopyala Seçili hücreleri sütun başlıklarıyla kopyalama
Üst Bilgileri Kopyala Yalnızca sütun başlıklarını kopyalama

Bu sonuç bölmesi klavye kısayollarını da kullanabilirsiniz (ayar aracılığıyla pgsql.shortcuts yapılandırılabilir):

Eylem Varsayılan kısayol
Seçimi kopyala Ctrl+C
Tümünü seç Ctrl+A
Sonuçlar bölmesini açma/kapatma Ctrl+Alt+R
İletiler bölmesini değiştirme Ctrl+Alt+Y
Odak sonuçları kılavuzu Ctrl+Alt+G
Önceki sonuç ızgarası Ctrl+Yukarı
Sonraki sonuç ızgarası Ctrl+Aşağı

Tip

Her kopyalama yaptığınızda sütun başlıklarını eklemek için pgsql.copyIncludeHeaders seçeneğini true olarak ayarlayın. Kopyalanan hücrelerdeki yeni satır karakterlerini korumak için pgsql.copyRemoveNewLine değerini false olarak ayarlayın.

Sonuçları kaydetme

Sonuçlar araç çubuğunda bir kaydet düğmesi seçerek sorgu sonuçlarını dışarı aktarın:

Button Format
CSV olarak kaydet Virgülle ayrılmış değerler (.csv)
JSON olarak kaydet JavaScript Nesne Gösterimi (.json)
Excel olarak kaydet Microsoft Excel çalışma kitabı (.xlsx)

CSV dışarı aktarma davranışını şu ayarlarla özelleştirin:

Ayar Açıklama Varsayılan
pgsql.saveAsCsv.delimiter Sütun sınırlayıcı karakteri ,
pgsql.saveAsCsv.lineSeparator Çizgi ayırıcı Sistem varsayılanı
pgsql.saveAsCsv.textIdentifier Metin alanlarını çevreleyen karakter "
pgsql.saveAsCsv.encoding Dosya kodlama utf-8
pgsql.saveAsCsv.includeHeaders Sütun başlıklarını ekle true

Sonuçları ayrı bir sekmede açma

Büyük sonuç kümeleri için, daha fazla alan için sonuçları ayrılmış bir düzenleyici sekmesinde açın. Sonuç araç çubuğunda Yeni Sekmede Aç seçeneğini belirleyin veya sonuçları her zaman ayrı bir sekmede açmak için ayarlarınızda pgsql.openQueryResultsInTabByDefault seçeneğini true olarak ayarlayın.

İletiler sekmesi

İletiler sekmesinde durum iletileri, satır sayıları ve yürütme süresi gibi sorgu yürütme bilgileri gösterilir. Her ileti bir zaman damgası içerir.

İletiler bölmesi varsayılan olarak sonuç kılavuzuyla birlikte açılır. Bu davranışı değiştirmek için pgsql.messagesDefaultOpen değerini false olarak ayarlayın.

Tip

pgsql.showBatchTime öğesini, ayrı ayrı toplu işlemler için çalıştırma süresini görüntülemek üzere true olarak ayarlayın.

Sorgu Planı sekmesi

Bir EXPLAIN veya EXPLAIN ANALYZE sorgusu çalıştırdığınızda, Sonuçlar ve İletiler'in yanında bir Sorgu Planı sekmesi görüntülenir. Yerleşik yürütme planı görselleştiricisini açmak için bu sekmeyi seçin veya PostgreSQL Sorgu Sonuçları paneli araç çubuğunda Sorgu Planını Görselleştir düğmesini seçin.

Geçerli sorgunun planını görselleştirmek için Komut Paleti'nden Sorgu Planını Görselleştir (PostgreSQL) de çalıştırabilirsiniz.

Yürütme planı görselleştiricisi hakkında ayrıntılı bilgi için bkz. Sorgu planı görselleştiricisi.

Apache AGE sorguları için graf görünümü

Bir sorgu Apache AGE'den graf tabanlı sonuçlar döndürdüğünde, uzantı cypher() işlev çağrılarını ve Apache AGE desenlerini (agtype, ag_catalog) algılar ve sonuç kümesini standart ızgara yerine grafik görünümünde açar.

  • Görünümler arasında geçiş yapma: Kılavuzdan graf görünümüne geçmek için sonuçlar araç çubuğunda Grafiğe Geç'i veya kılavuza dönmek için Tabloya Geç'i seçin.
  • Öğeleri inceleme: Özellikler panelinde etiketlerini ve özelliklerini görüntülemek için grafikteki düğümleri veya kenarları seçin.
  • Gezinme: Grafik araç çubuğu düğmelerini kullanın: Yakınlaştır, Uzaklaştır, Sığdırmak için Yakınlaştır ve Sıfırla.
  • Dışarı Aktar: Grafı görüntü olarak dışarı aktarmak için grafik araç çubuğunda PNG Olarak Kaydet'i seçin.

Note

Sorgu grafiğe dönüştürülebilir veriler döndürmezse, uzantı standart kılavuz görünümünü korur.

Kod parçacıkları

Uzantı, ortak SQL desenlerini iskelenize yardımcı olan yerleşik PostgreSQL kod parçacıkları içerir. Düzenleyiciye bir kod parçacığı ön eki yazın ve kod parçacığını genişletmek için Sekme tuşuna basın. Değerleri doldurmak için genişletilmiş kod parçacığındaki yer tutucular arasında sekme tuşuyla ilerleyin.

Mevcut kod parçacıkları

Önek Açıklama
pgCreateTable Birincil anahtarla temel tablo oluşturma
pgDropDatabase Mevcut bir PostgreSQL veritabanını bırakma
pgDropTable Tabloyu kaldır
pgInsertData Tabloya satır ekleme
pgSelectAll Basit SELECT * sorgu
pgUpdateRows Tablodaki verileri güncelleştirme
pgDeleteRows Tablodaki verileri silme
pgCreateIndex Belirtilen sütunda dizin oluşturma
pgCreateUser Yeni rol veya kullanıcı oluşturma
pgGrantPrivileges Kullanıcıya tabloda ayrıcalıklar verme
pgCTE Ortak Tablo İfadesi (CTE) örneği
pgLeftJoin LEFT JOIN sorgu örneği
pgExplainAnalyze EXPLAIN ANALYZE performans ayrıntıları için sorgu
pgListTables Belirli bir şemadaki tüm tabloları listeleme

Tip

Düzenleyiciye yazın pg ve kullanılabilir tüm kod parçacıklarını görmek için IntelliSense önerilerine göz atın.

Sorgu geçmişi

PostgreSQL Etkinlik Çubuğu panelindeki Sorgu Geçmişi görünümü, çalıştırdığınız sorguları otomatik olarak yakalar, böylece bunları daha sonra yeniden ziyaret edebilir ve yeniden kullanabilirsiniz.

Sorgu geçmişini yönetme

Eylem Nasıl Yapılır
Bir sorgu aç Sorgu Geçmişi görünümünde yeni bir düzenleyiciye yüklemek için bir girdi seçin
Sorgu çalıştırma Bir girdiye sağ tıklayın ve Sorguyu Çalıştır'ı seçin
Sorgu kopyala Bir girdiye sağ tıklayın ve Sorguyu Kopyala'yı seçin
Girdiyi sil Bir girdiye sağ tıklayın ve Sil'i seçin
Tümünü temizle Görünüm araç çubuğunda Tüm Sorgu Geçmişini Temizle düğmesini seçin
Komut Paleti'nde Göz At PGSQL: Open Query History in Command Palette komutunu çalıştırın

Denetim geçmişini kaydetme

Yakalamayı başlatmak veya duraklatmak için Sorgu Geçmişi görünümü araç çubuğunu kullanın:

  • Sorgu Geçmişi Yakalamayı Başlat: Yürütülen sorguları kaydetmeye devam edin.
  • Sorgu Geçmişi Kaydını Duraklat: Kaydı durdur.

Geçmiş davranışını şu ayarlarla yapılandırın:

Ayar Açıklama Varsayılan
pgsql.enableQueryHistoryFeature Sorgu Geçmişi özelliğini etkinleştirme true
pgsql.enableQueryHistoryCapture Yürütülen sorguları otomatik olarak yakalama true
pgsql.queryHistoryLimit En fazla depolanmış geçmiş girdisi sayısı 20