0

関数を実行するとします。select somefunction()現在実行中のステートメントを知りたい

select * from t正確なステートメントではなく、「select somefunction()」行が表示されるため、役に立ちません。

様子を見る方法はありますか?

ありがとう、H

4

2 に答える 2

1

PL/PgSQL デバッガーを使用することをお勧めします。これは、ほとんどの PostgreSQL インストールにプリインストールされている必要があり、.NET でアクティブ化した後、PgAdmin-III を介して使用されpostgresql.confます。

RAISE NOTICEまたは、知りたい重要なポイントでコードにステートメントを追加することを検討してください。

(ネストされている可能性がある) 関数呼び出しを含むアクティブな SQL ステートメントの「スタック トレース」を取得する機能は、私が知っているものではありません。それはとてもいいことですが、知る限り誰もそのような機能を実装していません。

于 2012-09-10T07:15:09.400 に答える
0

これはあなたを助けることができます。

CREATE FUNCTION somefunction() はテーブル (クエリ テキスト) を $$ として返します current_query::text を pg_stat_activity から選択します。$$ 言語 SQL;

于 2012-09-11T06:11:07.840 に答える