I have the following plpgsql function:

CREATE OR REPLACE FUNCTION public."temp"(int4)
  RETURNS public.books AS
$BODY$DECLARE
        old_book books%rowtype;
BEGIN
        select * into old_book from books 
        where book_id = var_book_id;

        IF FOUND = false THEN
                return null;
        ELSE
                return old_book;
        END IF;
END;$BODY$
  LANGUAGE 'plpgsql' VOLATILE;

If the function finds a book with the given ID, it returns its row, if
it doesn't, it should return no rows at all (naturally it is
simplified version of what I need). In practice, however, it returns
either a regular row, or a regular row with all fields set to NULL.

So if in my PHP code I have:

$rs = pg_query("select * from temp(-60)");
pg_num_rows($rs);

It keeps printing 1 even if the ID I pass doesn't exist. What's my remedy?

Thanks

-- 
 ICQ: 1912453
 AIM: VitalyB1984
 MSN: [EMAIL PROTECTED]
 Yahoo!: VitalyBe

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to