Rodrigo De León escribió:
On Nov 21, 2007 8:23 AM, Martin Marques <[EMAIL PROTECTED]> wrote:
(BTW, which it that limit if it exists?).

"In any case, the longest possible character string that can be stored
is about 1 GB."

See:
http://www.postgresql.org/docs/8.2/static/datatype-character.html
I was asking about the limit in the argument. Is it the same as the limits the types have in table definition?

So I made the function to test:

CREATE OR REPLACE FUNCTION datoGrande(TEXT) RETURNS BOOLEAN AS $body$
BEGIN
EXECUTE $ins1$
INSERT INTO funcdatogrande VALUES (default,$ins1$ ||
                 quote_literal($1) || $ins2$)$ins2$;
IF FOUND THEN
RETURN TRUE;
ELSE
RETURN FALSE;
END IF;
END;
$body$ LANGUAGE 'plpgsql';


What bothers me is that the INSERT passes ok (the data is inserted) but
the function is returning false on any all to it. I hope not to have a
conceptual problem.

I don't think EXECUTEing sets FOUND to true. Try:

CREATE OR REPLACE FUNCTION
  DATOGRANDE(TEXT)
RETURNS BOOLEAN AS $$
BEGIN
  INSERT INTO FUNCDATOGRANDE VALUES (DEFAULT,$1);
  IF FOUND THEN
    RETURN TRUE;
  ELSE
    RETURN FALSE;
  END IF;
END;
$$ LANGUAGE 'PLPGSQL';

I have always heard that modification queries should be EXECUTED in PL. AFAICR.


---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to