Visual Studio Code 的 PostgreSQL 擴充套件中的物件總管提供您的 PostgreSQL 伺服器、資料庫、結構及個別資料庫物件的樹狀視圖。 你可以瀏覽資料表、視圖、函式及其他物件,跨結構搜尋,並產生 SQL 腳本,全部都不離開編輯器。
Tip
使用物件瀏覽器進行物件導覽、搜尋及腳本產生。 如果你想要表格關係的視覺化示意圖,可以打開 Schema 視覺化工具。
開放物件瀏覽器
在活動列中選擇 PostgreSQL 圖示以開啟 PostgreSQL 檢視。 你也可以按 Ctrl+Alt+D(Windows/Linux)或 Cmd+Alt+D(macOS)。
這個視圖包含 「連線 」區塊,會以可摺疊的樹狀結構顯示你的伺服器。 連接伺服器顯示綠色圖示;已斷線的伺服器顯示紅色圖示。 如果沒有連線,會出現一個 「新增連線 」節點幫助你開始。
樹狀結構
物件探索器以一致的階層結構組織資料庫物件:
伺服器→資料庫→結構 → 物件集合
預設情況下,物件會依結構分組。 在每個結構下方,你會找到以下集合資料夾:
- 表格:展開表格以查看其 欄位、 鍵、 索引、 限制與 觸發器
- 瀏覽次數
- 預存程序
- 函式:包含純量值、表格值及彙總函數,分別存放於獨立資料夾
- 序列
- 類型:使用者定義類型與使用者定義資料表類型
集合資料夾的具體集合依據資料庫中存在的物件而定,並由後端工具服務填充。
展開任何收藏資料夾以查看個別物件。 對於資料表,你可以進一步檢視欄位、鍵(主鍵、外鍵、唯一鍵)、索引、約束和觸發程序。
Note
pgsql.objectExplorer.expandTimeout 設定控制擴充功能在展開節點時等待的時間。 預設是45秒。 如果你處理載入較慢的大型結構,則提高這個值。
依結構分類
當設定 pgsql.objectExplorer.groupBySchema 啟用(預設值)時,資料庫物件會出現在其結構節點下方。 若要切換此行為:
- 打開 指令面板 (Ctrl+Shift+P / Cmd+Shift+P)。
- 執行「依結構啟用群組」或「依結構停用群組」。
當你停用依結構分組時,物件收集資料夾會直接出現在資料庫節點下方,而不是在個別結構下方。
連接與管理伺服器
你可以直接從 連線 樹管理伺服器連線。 位於 Connections 區段頂端的工具列,以及右鍵快顯功能表,提供下列操作。
工具列動作
| Button | 命令 | Description |
|---|---|---|
| + | 新增連線 | 開啟 連線對話框 以新增一台現有的 PostgreSQL 伺服器。 |
| 伺服器圖示 | 建立新伺服器 | 開啟一個建立中心,讓你可以部署新的 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器,或建立基於 Docker 的伺服器。 |
| 資料夾圖示 | 建立伺服器群組 | 建立一個新的伺服器群組來組織你的連線。 |
| 篩選圖示 | 只顯示已連接的伺服器 / 顯示已連接與已斷連線的伺服器 | 切換樹狀結構中已中斷連線的伺服器顯示狀態。 |
| 搜尋圖示 | 搜尋物件 | 打開 搜尋面板。 |
伺服器快顯功能表
右鍵點擊伺服器節點以存取以下指令:
- 搜尋物件:開啟針對此伺服器的搜尋面板。
- 編輯連線:重新開啟連線對話框,並保留本伺服器的已儲存設定。
- 斷開連接:關閉正在進行的連線。 伺服器會留在樹上,顯示紅色圖示,方便之後再連線。
- 移除:會完全刪除 連線樹中的 伺服器條目。
- 刷新:重新載入伺服器的子節點。 在 VS Code 外做結構變更後使用這個。
Note
斷線 只會在連接的伺服器上出現。 移除 功能在已連接與斷開伺服器上皆可用。
資料庫內容功能表
右鍵點擊資料庫節點以存取:
- 新查詢:開啟已連接此資料庫的查詢編輯器。
-
連接 PSQL:開啟一個整合式終端機工作階段,並透過
psql連線至此資料庫。 詳情請參見「 在終端機中使用 psql 」。 - Visualize Schema:開啟該資料庫的 Schema 視覺化工具 。
- 搜尋物件:開啟指向此資料庫的搜尋面板。
按一下滑鼠右鍵點選結構描述節點,即可存取 視覺化結構描述(僅限該結構描述)和 搜尋物件。
伺服器群組
伺服器群組可以讓你將連線組織到有名稱的資料夾中。 這對於在不同環境或團隊中與多台伺服器合作時非常有用。
- 在連接工具列中選擇資料夾圖示(建立伺服器群組),或開啟指令面板並執行 PGSQL:建立伺服器群組。
- 輸入群組的名稱、選填的描述和顏色。
- 請選擇 [確定]。
該群組會以 Connections 樹中的資料夾形式出現。 你可以把伺服器節點拖進群組來重新組織它們。 要修改群組,請右鍵點擊並選擇 編輯伺服器群組。 要刪除群組,請右鍵點擊並選擇 移除。
右鍵點擊伺服器群組,直接用 新增連線 或 建立新伺服器加入該群組的連線。
搜尋物件
當你需要在大型資料庫中尋找特定物件時,請使用內建的搜尋功能,而不是手動展開樹狀節點。
在 連結 工具列中選擇搜尋圖示開啟搜尋面板。 你也可以右鍵點擊伺服器、資料庫或結構節點,選擇 搜尋物件 來預先填充範圍。
搜尋面板提供以下控制功能:
| 管理 | Description |
|---|---|
| 選擇連接 | 選擇要使用哪個伺服器連線進行搜尋。 下拉選單顯示連線狀態(已連線 / 、已斷線)以及主機、埠號和使用者等詳細資訊。 |
| 選擇資料庫 | 選擇要搜尋的資料庫。 |
| 所有結構 | 可以將結果縮小到特定結構,或設定為 「全部結構 」來搜尋所有地方。 |
| 所有類型 | 依物件類型篩選。 可選擇任意組合的類型,如表格、檢視、函式、儲存程序和序列。 |
| 搜尋物件...... | 輸入一個子字串,與物件名稱相匹配。 搜尋不區分大小寫。 |
選擇 搜尋 以執行查詢。 結果以格子形式顯示,包含 物件名稱、 類型及 物件路徑 欄位。 選擇結果列,直接導向樹狀結構中的該物件。 連接樹會自動擴展必要的節點。
腳本資料庫物件
你可以直接從 連接 樹產生資料庫物件的 SQL 腳本。 右鍵點擊可執行腳本的物件以存取腳本指令。
| 命令 | 可用日期 | 產生的 SQL |
|---|---|---|
| 精選前1000強 | 表格、視圖 |
SELECT 查詢會回傳前 1,000 列。 |
| 腳本作為創作 | 表格、檢視、結構、儲存程序、函式、觸發器、索引、鍵、角色、類型 | 完整的 CREATE DDL 陳述式。 |
| 將指令碼拖放 | 與 Script as Create 相同 |
DROP 物件的陳述式。 |
| 將腳本設為 Alter | 檢視表, 函式, 預存程序 |
ALTER 用於該物件的陳述式。 |
| 以腳本方式執行 | 預存程序 |
CALL 或 SELECT 用來執行例程的陳述式。 |
每個產生的腳本會在一個新的查詢編輯器分頁中開啟,該分頁與來源物件連結到同一資料庫。 你可以立即檢視、編輯並執行腳本。
Tip
選擇前 1000 名是預覽表格資料最快的方法。 右鍵點擊表格並選擇 「選擇前1000 名」,即可一步開啟並執行查詢。
複製名稱
在 連接 樹中右鍵點擊任何非資料夾物件,選擇 複製 名稱,將其合格名稱複製到剪貼簿。 你也可以選擇節點,按 Ctrl+C(Windows/Linux)或 Cmd+C(macOS)。
複製的名稱使用 [database].schema.[object] 括號符號格式,準備貼到你的 SQL 查詢中。
來自物件總管的新查詢
右鍵點擊資料庫節點,選擇 新查詢 ,開啟已連接該資料庫的查詢編輯器。 編輯器會繼承伺服器連線,並鎖定你選擇的資料庫,讓你能立即開始撰寫查詢。
篩選樹狀節點
部分收藏資料夾支援篩選,以縮小顯示物件範圍。 當節點可過濾時,右鍵點擊並選擇 篩選 器以開啟篩選面板。 你可以在物件屬性上設定條件,例如 包含、開頭為 或 等於,然後選取 OK 以套用。
過濾過的節點會顯示 (filtered) 在標籤後面。 要移除過濾器,請右鍵點擊該節點,並在過濾器面板中選擇 清除 。
拖放
你可以在伺服器群組間拖動伺服器節點來重新組織連線。 你也可以將資料庫物件(資料表、視圖、函式、儲存程序)從 Connections 樹拖入查詢編輯器,將其結構限定名稱插入文字。