2013-12-09 80 views
0

我收到此錯誤。爲什麼?PostgreSQL腳本錯誤

CREATE OR REPLACE FUNCTION factuurRegel() 
RETURNS TRIGGER AS 
$$ 

BEGIN 
INSERT INTO Factuur(factuurnr, factuurdatum, bestelnr) 
VALUES ((default to_char(CURRENT_DATE ,'yyyy') || '-' || new.bestelnr), CURRENT_DATE, new.bestelnr); 
RETURN NEW; 
END; 
$$ 
LANGUAGE plpgsql; 

錯誤:

ERROR: syntax error at or near "default" 
LINE 7: VALUES ((default to_char(CURRENT_DATE ,'yyyy') || '-' || new... 
       ^
********** Error ********** 

ERROR: syntax error at or near "default" 
SQL state: 42601 
Character: 137 

回答

2

我不是一個PostgreSQL的傢伙,但我99%肯定你不能把defaultVALUES(),還包括一個價值存在。我想你想要這樣的:

CREATE OR REPLACE FUNCTION factuurRegel() 
RETURNS TRIGGER AS 
$$ 

BEGIN 
INSERT INTO Factuur(factuurnr, factuurdatum, bestelnr) 
VALUES ((to_char(CURRENT_DATE ,'yyyy') || '-' || new.bestelnr), CURRENT_DATE, new.bestelnr); 
RETURN NEW; 
END; 
$$ 
LANGUAGE plpgsql; 

See here for more info - 你可以包括DEFAULT作爲一種價值提供價值,但不能同時使用。

+0

工作感謝,很快就會接受。我也沒有進入postgresql。如果你問我,請直截了當。但我們現在必須將這個用於我們的項目。 – MOTIVECODEX

+0

@ErwinBrandstetter:這也是我最初的想法。向右滾動;總共有三個。 –

+0

@EdCottrell:啊,我現在看到了,對不起。冒着去除一些空白空間的自由,刪除了我誤導性的評論。那麼,並將鏈接固定爲指向當前手冊。 8.2已經過時了。 –