Du stöter antagligen på den här förändringen i PostgreSQL 9.2 (citerar versionskommentarerna här):
Inte längre tvångsvis små procedurspråksnamn i CREATEFUNCTION (Robert Haas)
Medan icke-citerade språkidentifierare fortfarande är små bokstäver, är strängar och citerade identifierare inte längre tvångsmässiga nedsänkta. Så till exempel CREATE FUNCTION ... SPRÅK 'C' kommer inte längre att fungera; det måste stavas "c", eller bättre utelämna citattecken.
Det återspeglas också i manualen för CREATE FUNCTION
lang_name
Namnet på språket som funktionen är implementerad i. Kan vara
SQL
,C
,internal
, eller namnet på ett användardefinierat procedurspråk. För bakåtkompatibilitet kan namnet omges av enkla citattecken.
Att citera språknamnet har varit avskräckt sedan åtminstone version 7.3 (kanske längre), men gamla vanor dör så klart. Ta bort citattecken runt 'C'
löser problemet och kommer fram till:LANGUAGE c
eller LANGUAGE C
.
PL/R
var inte redo för PostgreSQL 9.2 i det avseendet, av projektsidan att döma.
Feedback från Joe Conway
Joe Conway lämnade ett svar som raderades eftersom det borde vara en kommentar. Jag klistrar in det här för allmänheten som inte kan se raderade svar:
Jag fick meddelandet, har bara inte haft tid att göra en ny PL/R-release. Leta efter den i december, men under tiden är den manuella lösningen ovan ganska enkel.