Re: what's going on...
От | Jason Earl |
---|---|
Тема | Re: what's going on... |
Дата | |
Msg-id | 87vgflbqmd.fsf@npa01zz001.simplot.com обсуждение исходный текст |
Ответ на | what's going on... ("Lukasz Feldman" <lukasz@atm.com.pl>) |
Список | pgsql-novice |
You need to escape single quotes "'" in plpgsql functions. The correct function should look like this: CREATE FUNCTION analizuj_pomiary() RETURNS bool AS ' DECLARE pomiary RECORD; BEGIN FOR pomiary IN SELECT * FROM brewan_pomiar LOOP IF substr(pomiary.datetime,1,10)=to_char(now(),''mm/dd/yyyy'') THEN ^ ^ INSERT INTO TESTOWA | | VALUES ( | | analizuj_flow( | | pomiary.ipRouter, | | pomiary.source_ip, +-----+-----+ pomiary.dest_ip, | pomiary.bytes, | pomiary.datetime) | ); Look at US!! END IF; END LOOP; RETURN true; END; ' LANGUAGE 'plpgsql'; Jason "Lukasz Feldman" <lukasz@atm.com.pl> writes: > Hello! > > I was trying to create a function: > > CREATE FUNCTION analizuj_pomiary() RETURNS bool AS ' > DECLARE pomiary RECORD; > BEGIN > FOR pomiary IN SELECT * FROM brewan_pomiar LOOP > > IF substr(pomiary.datetime,1,10)=to_char(now(),'mm/dd/yyyy') > THEN > INSERT INTO TESTOWA > VALUES ( > analizuj_flow( > pomiary.ipRouter, > pomiary.source_ip, > pomiary.dest_ip, > pomiary.bytes, > pomiary.datetime) > ); > END IF; > > END LOOP; > RETURN true; > END; ' LANGUAGE 'plpgsql'; > > ... and I received an error: > > ERROR: parser: parse error at or near "mm" > > What's going on? What does it mean? > > ----- > Łukasz Feldman, Konsultant > Zespol Konsultantow ds. Systemów Zarzadzania Sieciami i Systemami > Telekomunikacyjnymi; > ATM S.A., ul. Grochowska 21a, 04-186 Warszawa, POLAND > tel (+48 22) 5156332, fax (+48 22) 5156146, mobile (+48) 607 167 634 , > http://www.atm.com.pl > > > > > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
В списке pgsql-novice по дате отправления: