Thread: sintax???
I have the following: CREATE FUNCTION RegistrarConexion(char(8),char(16),char(20)) RETURNS integer AS ' DECLARE ret integer; BEGIN INSERT INTO BitacoraConexion(username, IPmaquina, nombremaquina, conexion) VALUES ($1, $2, $3, CURRENT_TIMESTAMP); SELECT INTO ret currval('bitacoraconex_idbitacoracon_seq'); RETURN ret; END;' LANGUAGE 'plpgsql'; and if I execute this file I get the following error: psql:SPRegConex.sql:20: ERROR: parser: parse error at or near "bitacoraconex_idbitacoracon_seq" I asume it's due to a sintax error having to do with "currval", but I can't find what the proper sintax would be for 'plpgsql' for getting the last sequence value assigned (I even tried select currval('bitacoraconex_idbitacoracon_seq') as ret with equal result). Can someone help me out here?????? Thanx P.S. Is there a manual for plpgsql sintax, instructions, functions.... somewhere?
On Thu, 1 Feb 2001, Alfonso Peniche wrote: > I have the following: > > CREATE FUNCTION RegistrarConexion(char(8),char(16),char(20)) > RETURNS integer > AS ' > DECLARE ret integer; > > BEGIN > INSERT INTO BitacoraConexion(username, IPmaquina, > nombremaquina, conexion) > VALUES ($1, $2, $3, CURRENT_TIMESTAMP); > > SELECT INTO ret > currval('bitacoraconex_idbitacoracon_seq'); > > RETURN ret; > END;' > LANGUAGE 'plpgsql'; > > and if I execute this file I get the following error: > > psql:SPRegConex.sql:20: ERROR: parser: parse error at or near > "bitacoraconex_idbitacoracon_seq" > > I asume it's due to a sintax error having to do with "currval", but I > can't find what the proper sintax would be for 'plpgsql' for getting the > last sequence value assigned (I even tried I believe the problem is that you need to escape the single quotes, otherwise it thinks you're ending the function text. Try currval(''bitacoraconex_idbitacoracon_seq'');
Thanks, Now I have another problem: If I run select registrarconexion('mine', '201.201.201.1','MYCPU'); I get a message NOTICE: plpgsql: ERROR during compile of registrarconexion near line 1 "RROR: parse error at or near " Any ideas? Thanx. Stephan Szabo wrote: > On Thu, 1 Feb 2001, Alfonso Peniche wrote: > > > I have the following: > > > > CREATE FUNCTION RegistrarConexion(char(8),char(16),char(20)) > > RETURNS integer > > AS ' > > DECLARE ret integer; > > > > BEGIN > > INSERT INTO BitacoraConexion(username, IPmaquina, > > nombremaquina, conexion) > > VALUES ($1, $2, $3, CURRENT_TIMESTAMP); > > > > SELECT INTO ret > > currval('bitacoraconex_idbitacoracon_seq'); > > > > RETURN ret; > > END;' > > LANGUAGE 'plpgsql'; > > > > and if I execute this file I get the following error: > > > > psql:SPRegConex.sql:20: ERROR: parser: parse error at or near > > "bitacoraconex_idbitacoracon_seq" > > > > I asume it's due to a sintax error having to do with "currval", but I > > can't find what the proper sintax would be for 'plpgsql' for getting the > > last sequence value assigned (I even tried > > I believe the problem is that you need to escape the single quotes, > otherwise it thinks you're ending the function text. Try > currval(''bitacoraconex_idbitacoracon_seq'');
It looks like you also may have some dos style end of lines in whatever you entered in. Did you cut and paste or copy a file from a windows box? That's why the " is over the E in ERROR because it's seeing the CR character. On Fri, 2 Feb 2001, Alfonso Peniche wrote: > Thanks, Now I have another problem: > > If I run select registrarconexion('mine', '201.201.201.1','MYCPU'); > > I get a message > > NOTICE: plpgsql: ERROR during compile of registrarconexion near line 1 > "RROR: parse error at or near " > > Any ideas? > > Thanx. > > Stephan Szabo wrote: > > > On Thu, 1 Feb 2001, Alfonso Peniche wrote: > > > > > I have the following: > > > > > > CREATE FUNCTION RegistrarConexion(char(8),char(16),char(20)) > > > RETURNS integer > > > AS ' > > > DECLARE ret integer; > > > > > > BEGIN > > > INSERT INTO BitacoraConexion(username, IPmaquina, > > > nombremaquina, conexion) > > > VALUES ($1, $2, $3, CURRENT_TIMESTAMP); > > > > > > SELECT INTO ret > > > currval('bitacoraconex_idbitacoracon_seq'); > > > > > > RETURN ret; > > > END;' > > > LANGUAGE 'plpgsql'; > > > > > > and if I execute this file I get the following error: > > > > > > psql:SPRegConex.sql:20: ERROR: parser: parse error at or near > > > "bitacoraconex_idbitacoracon_seq" > > > > > > I asume it's due to a sintax error having to do with "currval", but I > > > can't find what the proper sintax would be for 'plpgsql' for getting the > > > last sequence value assigned (I even tried > > > > I believe the problem is that you need to escape the single quotes, > > otherwise it thinks you're ending the function text. Try > > currval(''bitacoraconex_idbitacoracon_seq''); >
Thanks, I just figured that out. Now I have another problem: If I run select registrarconexion('mine', '201.201.201.1',''MYCPU); I get a message NOTICE: plpgsql: ERROR during compile of registrarconexion near line 1 "RROR: parse error at or near " Any ideas? Thanx. Stephan Szabo wrote: > On Thu, 1 Feb 2001, Alfonso Peniche wrote: > > > I have the following: > > > > CREATE FUNCTION RegistrarConexion(char(8),char(16),char(20)) > > RETURNS integer > > AS ' > > DECLARE ret integer; > > > > BEGIN > > INSERT INTO BitacoraConexion(username, IPmaquina, > > nombremaquina, conexion) > > VALUES ($1, $2, $3, CURRENT_TIMESTAMP); > > > > SELECT INTO ret > > currval('bitacoraconex_idbitacoracon_seq'); > > > > RETURN ret; > > END;' > > LANGUAGE 'plpgsql'; > > > > and if I execute this file I get the following error: > > > > psql:SPRegConex.sql:20: ERROR: parser: parse error at or near > > "bitacoraconex_idbitacoracon_seq" > > > > I asume it's due to a sintax error having to do with "currval", but I > > can't find what the proper sintax would be for 'plpgsql' for getting the > > last sequence value assigned (I even tried > > I believe the problem is that you need to escape the single quotes, > otherwise it thinks you're ending the function text. Try > currval(''bitacoraconex_idbitacoracon_seq'');
Are jokes allowed on this forum? No I was just wondering about taxes on sin... Syntax would maybe be more on subject. <serious mode on> I am about to plunge into messing about with Macromedia Dreamweaver Ultradev 4, Postresql, Lutris Enhydra and or Tomcat. Someone wrote me with some advice but my mail server was eating mail and I lost the message. Could we: - whip up a howto - get some recognition from folk at Macromedia by putting adequate code/documentation on Dreamweaver Exchange. I am willing to play the role of Candide (the newbie for those not brushed up on french literature) and document my procedings. Cheers Tony Grant -- I am in my office right now and your autoresponder message is currently being proccessed. In a short time 5,000 copies of the same should arrive in your mailbox.
Alfonso Peniche <alfonso@iteso.mx> writes: > NOTICE: plpgsql: ERROR during compile of registrarconexion near line 1 > "RROR: parse error at or near " The overwriting of the initial "E" suggests that the thing is trying to complain about a carriage return (\r). Probably you saved your script from an editor that stores newlines in DOS style (\r\n) rather than Unix style (\n). plpgsql doesn't think that \r is whitespace. That's been changed for 7.1, but in the meantime you need a less Microsofty editor. regards, tom lane