Skip to main content

概要

PostgreSQLツールを使用すると、PostgreSQLデータベースに対してSQLクエリを実行できます。

主な機能

  • POSTGRES_RUN_QUERY
    • PostgreSQLデータベースに対してSQLクエリを実行します。SELECT、INSERT、UPDATE、DELETEなどのSQL文をサポートします。
    • 入力: connection(PostgreSQL接続シークレット)と query(実行するSQL)
    • 結果を構造化されたデータ(カラムと行)として取得します。

認証

接続情報を含む POSTGRES シークレットを作成し、connection 入力として渡してください。
  • Host: PostgreSQLサーバーのホスト名(必須)
  • Port: ポート番号。省略時は 5432 が使われます。
  • Database: 接続先のデータベース名
  • User: 接続に使用するユーザー名
  • Password: そのユーザーのパスワード
  • SSL: SSLを使用するかどうか。デフォルトで有効です。無効にする場合は false(または disable)を設定してください。旧形式の sslmode フィールドも利用できます。
注意: 認証情報は機密情報として扱い、公開リポジトリにコミットしないでください。

SSLの挙動

SSLはデフォルトで有効で、サーバー証明書の厳密な検証は行いません。SSLでの初回接続に失敗し、かつSSLが明示的に無効化されていない場合は、自動的にSSLなしで再接続を試みます(サーバーがSSL非対応の可能性があるため)。

使用例

例: PostgreSQLクエリの実行

例: クエリ結果をLLMで要約

注意事項

  • タイムアウト: 接続は10秒、各SQL文の実行は30秒でタイムアウトします。
  • 読み取り専用ではありません: 書き込み系のSQL文(INSERT、UPDATE、DELETE、DDL)もそのまま実行されます。適切に権限を絞ったデータベースユーザーを使用してください。
  • 結果のシリアライズ: プリミティブ以外の値は文字列に変換されます。日時はISO 8601形式の文字列、バイナリ(bytea)は16進文字列、JSON・配列・オブジェクトはJSON文字列になります。
  • 結果セットを返さないSQL文: 結果セットを返さないクエリ(RETURNING なしの INSERT など)は、空の columnsrows を返します。