Patrice OLIVER wrote:
[snip]
create function insert_uv(varchar,varchar,varchar) returns integer as '
declare
  codeuv alias for $1;
  codetype alias for $2;
  libuv alias for $3;
  cletype integer;
begin
  select into cletype numtype(codeuv);
  insert into uv values (codeuv, cletype, libuv);
  return cletype;
end;
' language 'plpgsql';

When I do :

select insert_uv('SGBD','DUVC','TEST BD');
I get the following message :
ERROR: insert or update on table "uv" violates foreign key constraint "fk_uv_caracteri_type"
DETAIL: Key (typnum)=(43) is not present in table "types".


I don't kown why.

Before your "insert into" add: RAISE NOTICE ''cletype = %'', cletype;

This will show what value cletype has. Presumably it's 43 and you don't have an equivalent row in "types".

Or have I misunderstood the problem?

--
  Richard Huxton
  Archonet Ltd

---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
     joining column's datatypes do not match

Reply via email to