public inbox for [email protected]
help / color / mirror / Atom feedFrom: Samed YILDIRIM <[email protected]>
To: kunwar singh <[email protected]>
Cc: [email protected]
Subject: Re: How to pass arguments in postgres to sql scripts.
Date: Sat, 27 Apr 2024 16:13:50 +0300
Message-ID: <CAAo1mbkiZu07RJ7FC3yFkM_Aue=SpE1_d8stT2g8dyGqSoH8pA@mail.gmail.com> (raw)
In-Reply-To: <CAJSrDUqgMx2+bhX0f9MWDT9LyC4E44wFbTiqC+wboHc__QyV_g@mail.gmail.com>
References: <CAJSrDUqgMx2+bhX0f9MWDT9LyC4E44wFbTiqC+wboHc__QyV_g@mail.gmail.com>
Hi Kunwar,
You can check -v option of psql, 4th paragraph and \set command in
"Meta-Commads" section, and "Variables" subsection under "Advanced
Features".
https://www.postgresql.org/docs/16/app-psql.html
https://www.postgresql.org/docs/16/app-psql.html#APP-PSQL-VARIABLES
Best regards.
Samed YILDIRIM
On Sat, 27 Apr 2024, 16:03 kunwar singh, <[email protected]> wrote:
> Hi friends, Question: How to pass arguments in postgres to sql scripts.
> Context. When I am monitoring my production Oracle databases I have a lot
> of simple sql scripts (which require one or more arguments) which make my
> monitoring/troubleshooting life simpler. How can I achieve the same in
> postgres? We are migrating our Oracle databases to Postgres and I am
> modifying my scripts to do the same in Postgres.
>
> Oracle
> ======
> cat appjobcheck.sql
>
> SELECT
> SID,
> SYS_CONTEXT.GET_CURRENT_SCHEMA() AS "SCHEMA", -- Similar to datname
> USERNAME,
> PROGRAM AS "APPLICATION_NAME",
> STATUS,
> SQL_ID, -- Use V$SQL to get full query text based on SQL_ID
> LOGON_TIME AS "BACKEND_START",
> SQL_EXEC_START AS "QUERY_START",
> FROM
> V$SESSION
> WHERE
> STATUS = 'ACTIVE' -- Filter to active sessions
> AND TYPE != 'BACKGROUND'; -- Exclude background processes
> AND program='&1';
>
> The way to invoke from sqlplus is .
>
> SQL> @appjobcheck batchprocessapp1 ---- batchprocessapp1 is what I want
> to monitor
>
>
> Postgres
> ==========
> cat appjobcheck.sql
>
> SELECT
> pid,
> datname,
> usename,
> application_name,
> state,
> query,
> backend_start,
> query_start
> FROM pg_stat_activity where application_name='&1';
>
> The way I am trying invoke from postgres is .
>
>
> postgres=> \i appjobcheck.sql batchprocessapp1 ---- batchprocessapp1 is
> what I want to monitor
> pid | datname | usename | application_name | state | query |
> backend_start | query_start
>
> -----+---------+---------+------------------+-------+-------+---------------+-------------
> (0 rows)
>
> \i: extra argument "batchprocessapp1" ignored
>
> --
> Cheers,
> Kunwar
>
view thread (3+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected]
Subject: Re: How to pass arguments in postgres to sql scripts.
In-Reply-To: <CAAo1mbkiZu07RJ7FC3yFkM_Aue=SpE1_d8stT2g8dyGqSoH8pA@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox