什麼是 Visual Studio Code 的 PostgreSQL 擴充功能?

Visual Studio Code 的 PostgreSQL 擴充功能是一個功能豐富的工具,旨在簡化 PostgreSQL 資料庫的管理與開發。 此延伸模組可讓開發人員連線到 PostgreSQL 資料庫、撰寫和執行查詢,以及管理資料庫物件,而不需要離開 Visual Studio Code 環境。 此延伸模組透過引進完整的功能、直覺式 UI 設計,以及與適用於 PostgreSQL 的 Azure 資料庫等雲端平臺無縫整合,徹底改變了 PostgreSQL 開發工作流程。

如何安裝擴充功能

你可以直接從 Visual Studio Code 的擴充市場安裝 PostgreSQL 擴充功能。 執行下列步驟:

  1. 在 Visual Studio Code 中,請選擇活動列中的擴充功能圖示,或使用 「View: Extensions 」指令開啟擴充功能檢視。
  2. 在延伸模組 Marketplace 中搜尋 PostgreSQL
  3. 選擇 PostgreSQL 擴充功能並選擇 安裝

安裝擴充功能後,Visual Studio Code 側邊欄會出現一個大象圖示,代表 PostgreSQL 頁面。

Features

適用於 Visual Studio Code 的 PostgreSQL 延伸模組帶來了一系列功能強大的新功能,可提升生產力並簡化開發工作流程。

連線管理員

連接管理器可簡化連線到本機和雲端裝載的 PostgreSQL 資料庫。 重要功能包括:

  • 支援多種連線設定檔,讓你能連接並管理多個 PostgreSQL 實例。
  • 無論您要連線到本機資料庫還是部署在雲端中的資料庫,連接字串剖析都能順暢連線。
  • 與適用於PostgreSQL的 Azure 資料庫整合,以直接瀏覽和篩選實例,以及Microsoft Entra ID 驗證,以取得健全的安全性。

物件總管

強化版的物件探索器提供資料庫物件的階層式視圖,讓瀏覽和管理結構、資料表、檢視與函式變得更為方便。 值得注意的功能包括:

  • 進階篩選選項,快速定位特定物件。
  • 建立、修改和刪除資料庫物件的功能,例如數據表、檢視表和預存程式。
  • 以視覺效果呈現資料庫架構和關聯性,讓瀏覽簡化。

查詢編輯器

查詢編輯器會透過以下面向改善查詢撰寫和執行的體驗:

  • 具有內容感知功能的 IntelliSense,可自動完成 SQL 關鍵字、資料表名稱和函式。
  • 語法醒目提示和自動格式化,以提升查詢可讀性。
  • 查詢歷史追蹤,讓你能重用先前執行的查詢。

結果檢視器

結果檢視器讓你能透過以下功能與查詢結果互動:

  • 將結果匯出至 CSV、JSON 或 Excel 格式。
  • 搜尋、篩選和排序選項,以有效率地分析數據。
  • 持續性資料檢視會在索引標籤之間瀏覽時保留內容。

Apache AGE 圖形視覺化

Apache AGE 圖視覺化工具讓你能執行 Apache AGE 密碼查詢,並以互動式節點邊圖的形式探索結果。 該擴充功能自動偵測圖形查詢結果,並在視覺化瀏覽器中呈現,具備每節點提示、縮放與平移控制、匯出支援及配合主題的樣式。

要在圖形視覺化器中呈現結果,您的查詢必須符合以下條件:

  • 回傳完整物件,而非純量屬性 ——圖視覺化器需要完整的頂點與邊物件。 擷取純量屬性()RETURN p.name, p.title的查詢會回傳純文字值,無法在視覺化器中呈現。 不要回傳屬性,而是回傳完整物件並將關聯變數命名為:
    SELECT * FROM cypher('my_graph', $$
        MATCH (a:Product)-[r:BOUGHT_TOGETHER]->(b:Product)
        RETURN a, r, b
    $$) AS (a agtype, r agtype, b agtype);
    
  • 設定 disp_label 為有意義的節點文字 ——沒有 disp_label,節點會顯示內部 ID。 設定此屬性,使視覺化工具顯示有用的標籤:
    SELECT * FROM cypher('my_graph', $$
        MATCH (a:Product)-[r:BOUGHT_TOGETHER]->(b:Product)
        SET a.disp_label = a.title
        SET b.disp_label = b.title
        RETURN a, r, b
    $$) AS (a agtype, r agtype, b agtype);
    
  • 將輸出欄位與回傳物件匹配 ——包裝 AS (...) 子句必須每個回傳物件有一欄。 對於多跳查詢,包含每個中間節點與邊:
    SELECT * FROM cypher('my_graph', $$
        MATCH (a:Product)-[r1:BOUGHT_TOGETHER]->(mid:Product)-[r2:BOUGHT_TOGETHER]->(b:Product)
        RETURN a, r1, mid, r2, b
    $$) AS (a agtype, r1 agtype, mid agtype, r2 agtype, b agtype);
    

GitHub Copilot 整合

此延伸模組與 GitHub Copilot 整合,以提供專為 PostgreSQL 開發量身打造的 AI 導向協助。 像 這樣的指令 @pgsql,你可以查詢資料庫、優化結構,甚至請求 Copilot 執行特定的 SQL 操作。 這項功能透過提供上下文指引和可行的深度見解來提升生產力。

支援的作業系統

PostgreSQL 擴充功能適用於以下作業系統:

  • 窗戶
  • macOS
  • Linux

此擴充套件支援多種 Linux 發行版,包括 Ubuntu、Fedora 及 Red Hat Enterprise Linux。

意見反應與支援

針對 Bug、功能要求和問題,請使用 Visual Studio Code 中的內建意見反應工具。 您可以透過 Visual Studio Code 說明選單或 PGSQL 指令面板完成此回饋。

  • 說明功能表

    • 移至 [說明] > [報告問題]
  • 命令選擇區

    • 使用 Ctrl + Shift + P 開啟命令選擇區並執行: PGSQL: Report Issue