Thread: BUG #1553: Function arguments and table fields

BUG #1553: Function arguments and table fields

From
"Dan Black"
Date:
The following bug has been logged online:

Bug reference:      1553
Logged by:          Dan Black
Email address:      dchernyshov@yandex.ru
PostgreSQL version: 8.0.1
Operating system:   MS Windows 2000 sp4
Description:        Function arguments and table fields
Details:

1) Here is simple function

CREATE OR REPLACE FUNCTION img_update(img_name int4, img_name "varchar")
  RETURNS int4 AS
$BODY$DECLARE
  _imgId ALIAS FOR $1;
  _imgName ALIAS FOR $2;
BEGIN
  UPDATE images SET img_name = _imgName WHERE img_id = _imgId;
  RETURN 0;
END$BODY$
  LANGUAGE 'plpgsql' VOLATILE SECURITY DEFINER;

2) Here is simple table

CREATE TABLE images
(
  img_id int4 NOT NULL DEFAULT nextval('public.images_id_seq'::text),
  img_name varchar(34)
)

PROBLEM:
  Function does not work

PROBLEM-SOLVING:
  Need to rename function parameters, so that their names and table fields
names are unmatched.

It's not probably bug, but it's difficult-to-locate error

Re: BUG #1553: Function arguments and table fields

From
Neil Conway
Date:
Dan Black wrote:
>   Need to rename function parameters, so that their names and table fields
> names are unmatched.

I don't really see a way to make the error any more obvious in the
current pl/pgsql implementation, unfortunately.

-Neil