跳至主要內容
hs-sql-agent
2.0.2
文件 2.0.2
文件 SQL 編譯器

資料庫方言

介紹統一 MCP 介面背後的六種資料庫支援,以及 SQL 方言「有限支援」的具體含義。

hs-sql-agent 目前支援以下六種關聯式資料庫:

資料庫角色
PostgreSQL輸入與輸出 SQL 方言
MySQL輸入與輸出 SQL 方言
SQL Server輸入與輸出 SQL 方言
Oracle輸入與輸出 SQL 方言
SQLite輸入與輸出 SQL 方言
Firebird輸入與輸出 SQL 方言

MCP 介面統一,不代表 SQL 方言統一

MCP 用戶端使用的是統一伺服器介面,但 SQL 的實際語意仍取決於資料庫。編譯器負責確保支援的語句在目標資料庫上維持原本含義。

這類差異會影響運算子、資料型別、CAST、函式、識別項、分頁、NULL 語意與 DML 行為。

支援範圍是明確限定的

資料庫出現在支援清單中,不代表該資料庫提供的所有 SQL 語法都能使用。

如果輸入語法無法被安全地內部表示,或無法確認目標資料庫能維持等價語意,編譯器就會依「失敗即拒絕」原則拒絕要求。支援範圍可以持續擴大,但不會放棄這項規則。

在正式環境中,應把 hs-sql-agent 編譯器實際接受的 SQL 視為正式契約,不要假設資料庫命令列工具可以執行的任意 SQL 都會被 hs-sql-agent 接受。