I want to add more than one row into table using function,
but unable to pass F1(thebook book[]) as.
Kindly assist if any solution.
CREATE TABLE book
(
  id smallint NOT NULL DEFAULT 0,       
  bname text,       
  btype text,
  bprices numeric(11,2)[],
  CONSTRAINT key PRIMARY KEY (id )
);
CREATE OR REPLACE FUNCTION save_book(thebook book)
  RETURNS text AS
  $BODY$
DECLARE 
  myoutput text :='Nothing has occured';
BEGIN
  update book set 
  bname=thebook.bname,
  btype=thebook.btype,bprices=thebook.bprices  WHERE id=thebook.id;
  IF FOUND THEN
    myoutput:= 'Record with PK[' || thebook.id || '] successfully updated';
    RETURN myoutput;
  END IF;
  BEGIN
    INSERT INTO book values(thebook.id,thebook.bname,thebook.btype, thebook.bprices);
    myoutput:= 'Record successfully added';           
  END;
  RETURN myoutput;
END;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
SELECT save_book(row(111,'the art of living','ABC', array[190,220])::book); 
 
     
    