PL/pgSQL Problem
От | Ron St-Pierre |
---|---|
Тема | PL/pgSQL Problem |
Дата | |
Msg-id | 44DA1C4E.4040404@shaw.ca обсуждение исходный текст |
Ответы |
Re: PL/pgSQL Problem
Re: PL/pgSQL Problem |
Список | pgsql-general |
Hi, I'm having a problem with one of my functions, where I delete all rows containing a particular date and then re-insert a row with that same date. When I try this I get a constraint error. This just started recently, after upgrading our database from 7.4 to 8.1.4 (now on RH EL). here's the function: CREATE OR REPLACE FUNCTION updatesystemCounts() RETURNS void AS ' DECLARE compDate DATE; currCount INT; BEGIN compDate := current_date::date; LOOP DELETE FROM dm.systemCounts WHERE updateDate::date = compDate::date; INSERT INTO dm.systemCounts (updateDate) VALUES (compDate::date); ............. and here's the error: ERROR: duplicate key violates unique constraint "systemcounts_pkey" CONTEXT: SQL statement "INSERT INTO dm.systemCounts (updateDate) VALUES ( $1 ::date)" PL/pgSQL function "updatesystemcounts" line 8 at SQL statement The only explanation I can think of is that maybe the newer version of postgres needs a COMMIT inside the function. Any ideas? Thanks Ron St.Pierre
В списке pgsql-general по дате отправления: