本文へ移動
hs-sql-agent
2.0.2
ドキュメント 2.0.2
ドキュメント SQL コンパイラ

データベース方言

共通の MCP インターフェースの背後にある 6 種類のデータベース対応と、SQL 方言の対応範囲を説明します。

hs-sql-agent は現在、次の 6 種類のリレーショナルデータベースを対象にしています。

データベース役割
PostgreSQL入力・出力の SQL 方言
MySQL入力・出力の SQL 方言
SQL Server入力・出力の SQL 方言
Oracle入力・出力の SQL 方言
SQLite入力・出力の SQL 方言
Firebird入力・出力の SQL 方言

MCP の入口が共通でも、SQL 方言は共通ではありません

MCP クライアントから見えるサーバー契約は共通ですが、SQL の意味はデータベースごとに異なります。コンパイラは、設定されたデータベース上で、対応済みの SQL が同じ意味を保つように処理します。

この違いは、演算子、型、CAST、関数、識別子、ページング、NULL の意味、DML の動作などに影響します。

対応範囲は明示的に限定されています

対応データベースの一覧に製品名があるからといって、その製品が提供するすべての SQL 構文を受け付けるわけではありません。

入力された構文を内部表現として安全に扱えない場合や、出力先で同じ意味を保てると確認できない場合、コンパイラはフェイルクローズで拒否します。この原則を崩さずに、対応機能は段階的に増やせます。

本番環境では、各データベースの CLI が受け付ける SQL をそのまま実行できると考えず、hs-sql-agent のコンパイラが受理する範囲を正式な契約として扱ってください。