Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sdu2E-0023CQ-4E for pgsql-general@arkaria.postgresql.org; Tue, 13 Aug 2024 16:06:10 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sdu2C-004w3D-8M for pgsql-general@arkaria.postgresql.org; Tue, 13 Aug 2024 16:06:08 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sdu2B-004w35-Pu for pgsql-general@lists.postgresql.org; Tue, 13 Aug 2024 16:06:07 +0000 Received: from mail-oi1-x22d.google.com ([2607:f8b0:4864:20::22d]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sdu25-004fy7-9c for pgsql-general@lists.postgresql.org; Tue, 13 Aug 2024 16:06:07 +0000 Received: by mail-oi1-x22d.google.com with SMTP id 5614622812f47-3db14930a1aso4107554b6e.3 for ; Tue, 13 Aug 2024 09:06:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723565159; x=1724169959; darn=lists.postgresql.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=oAmzKP6iJM8UJ/iDLg8DO9az32s8L7b9vTLTCIlatYA=; b=Xcgqai7wIlumfbyEP1iWbLm/z8KYxH7bcAl5XgEe2fc56BAI+T93Bn45OH9uYVbwAy TXWHrobZLVuGu3nGJxkwHiUSYIe9ozizKjUeI6YJ9E6ZCKuAbRgq5d6wfSVibcay2K+L RFiBSqsQezV1XQJ+zsMeUc5SqY3MzzjyTOF0wdIwzf4uN71k/RQXM2rGdHkHvhqNlDkD zPpaVDxOF38pReYkicjfAHnLjB2oZr72j2LGyYMDWP+4swr2QW0y9bFKYL26mG4SyohV 4FUnlGoUuBl6JoTAvjDVETKYddKIQa1RItGoM8AsptW1q9mapC1wc4iXm2YtrkeBu2We HNBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723565159; x=1724169959; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=oAmzKP6iJM8UJ/iDLg8DO9az32s8L7b9vTLTCIlatYA=; b=rdOOeP5M8xl/11bO0exI26d/OyCJ3sMW25KSPzeEAJnmo3W46wVKAaj6/p+L91Et4w FsDlLnBRnm0uFlpuhS7MZrpQ7OxlPLpxs5pPN5zxPjtuqB/bv9i4IYamJpAaSH16xqVz jK4317F4eAJlrSmoL44In3cStLA5/I4XUcDkEXkP2//tjmuqJNsNA5QpNn9qX/Fm9vDc rZWcFE0oIaQSj8d4wk2fJUonm/3Nys0C/pdvK8fPsoEdD2bUtcV0HE+trnxzxcKA0uN+ wnAtD872hnNZcpfQS8vdPEsflmWp5qs6d5hhXaIIlYGQANXPfdBddJu81ELccePAvIRL Nevw== X-Gm-Message-State: AOJu0YxYqxInsaqof9j5ruSD9mdhgnfPiq2/1QfUkxSwD51ThkHZjZqQ dDLNgH3ajoILNbyGRM4ekX7xIl3O2+tiVqAZ2aHlSlk7LQIPyHxt0tRy7Bo50AWiltPGQ/euGDj pL61SwkVut0KIkDgWWKgJ6w9z2WQwhdrG X-Google-Smtp-Source: AGHT+IEtkWWbZYTUKw8LWQzKR+wGbF9HaQ3rtYfbP1k8+w6JJ8s/cssea3sematJvX09yNi4mWTXI1yJ9x1nNvMHb0s= X-Received: by 2002:a05:6808:1485:b0:3db:1ecf:5886 with SMTP id 5614622812f47-3dd1ee19661mr4045336b6e.14.1723565158827; Tue, 13 Aug 2024 09:05:58 -0700 (PDT) MIME-Version: 1.0 References: <015301daed95$fb5654e0$f202fea0$@jim-kosloskey.com> In-Reply-To: <015301daed95$fb5654e0$f202fea0$@jim-kosloskey.com> From: Ron Johnson Date: Tue, 13 Aug 2024 12:05:47 -0400 Message-ID: Subject: Re: Novice with Postgresql - trying simple Stored Procedure To: "pgsql-generallists.postgresql.org" Content-Type: multipart/related; boundary="0000000000000a3584061f92c937" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000000a3584061f92c937 Content-Type: multipart/alternative; boundary="0000000000000a3583061f92c936" --0000000000000a3583061f92c936 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Aug 13, 2024 at 11:32=E2=80=AFAM = wrote: > I have a simple 3 column table. The Table is a Month Name to number table > which also includes an effective date column. So 12 rows, 3 columns each. > > > > Here is the Stored Procedure I constructed to get the number if given the > name (3 parameters for the SP): > > > > *--/* > DROP PROCEDURE month_lookup > (in mth_name TEXT, > inout mth_num TEXT, > inout ret_cd TEXT); > CREATE OR REPLACE PROCEDURE month_lookup > (in mth_name TEXT, > inout mth_num TEXT, > inout ret_cd TEXT default '00000^00') > LANGUAGE plpgsql AS $$ > BEGIN > *-- SET mth_num =3D num WHERE name =3D mth_name; * > SELECT > DISTINCT month_nm_2_num.month_nm_2_num.num > FROM > month_nm_2_num.month_nm_2_num > WHERE > month_nm_2_num.month_nm_2_num.name =3D mth_name > ORDER BY > month_nm_2_num.month_nm_2_num.name ASC > INTO mth_num; > RAISE NOTICE '%', mth_num; > RETURN; > END; $$; > / > > > > Here is the invocation of that SP: > > > > *--/* > DO $$ > DECLARE > mth_name TEXT; > ret_cd TEXT; > mth_num TEXT; > BEGIN > call month_lookup ('Jan','00',null); > */* raise notice '%', mth_num;*/* > END $$; > / > > > > Here is the error I am receiving (using DB-Visualizer): > > > > > > I have tried a lot of different things. I have researched a number of > examples and I am stumped. I am fairly certain it is something simple and > related to the parameter in the SP. > > PG wants to be able to write to mnth_num, since it's an inout param. But it can't write to the constant literal '00'. Thus, I'd try calling month_lookup with a variable that's set to '00'. --=20 Death to America, and butter sauce. Iraq lobster! --0000000000000a3583061f92c936 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Tue, Aug 13, 2024 at 11:32=E2=80=AFAM = <jim.kosloskey@jim-ko= sloskey.com> wrote:

I have a simple 3 = column table. The Table is a Month Name to number table which also includes= an effective date column. So 12 rows, 3 columns each.

=C2=A0

Here is = the Stored Procedure I constructed to get the number if given the name (3 p= arameters for the SP):

=C2= =A0

--/
DROP PROCEDURE month_loo= kup
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0(in mth_name TEXT,<= br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 inout mth_num TEXT,
=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 inout ret_cd TEXT);
CREATE OR REPLA= CE PROCEDURE month_lookup
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0(in mth_name TEXT,
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 inout m= th_num TEXT,
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 inout ret_cd TEX= T default '00000^00')
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0LANGU= AGE plpgsql AS $$
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 BEGIN=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -- SET = mth_num =3D num WHERE name =3D mth_name;
=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0SELECT
=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0DISTINCT month_nm_= 2_num.month_nm_2_num.num
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0FROM
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0month_nm_2_num.month_nm_2_num
=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0WHERE
=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0month_nm_= 2_num.month_nm_2_num.name =3D mth_name
=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 ORDER BY
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0month_nm_2_num.month_nm_2_num.nam= e ASC
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 I= NTO mth_num;
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 RAIS= E NOTICE '%', mth_num;
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 RETURN;
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 END; = $$;
/

=C2=A0

Here is the invocation of that SP:

=C2=A0

--/<= /i>
DO $$
DECLARE
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0mth_name TEXT;
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret_cd TEXT= ;
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 mth_num TEXT;
BEGIN
= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 call month_lookup ('Jan'= ,'00',null);
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* ra= ise notice '%', mth_num;*/
END $$;
/

=C2=A0

Here is = the error I am receiving (using DB-Visualizer):

=C2=A0

=C2=A0

I have tried a lot of different things. I have researched a number o= f examples and I am stumped. I am fairly certain it is something simple and= related to the parameter in the SP.

<= /div>

PG wants to be able to wr= ite to mnth_num, since it's an inout=C2=A0param.=C2=A0 But it can't= write to the constant literal '00'.

Thus,= I'd try calling month_lookup with a variable that's set to '00= '.

-- =
Deat= h to America, and butter sauce.
Iraq lobster!
--0000000000000a3583061f92c936-- --0000000000000a3584061f92c937 Content-Type: image/png; name="image001.png" Content-Disposition: inline; filename="image001.png" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: ii_1914c78c6534cff311 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 RU5ErkJggg== --0000000000000a3584061f92c937--