Thread: ERROR: Unrecognized language specified ...

ERROR: Unrecognized language specified ...

From
Kevin HaleBoyes
Date:
I'm creating a function (for use in a trigger) from the example in the
documentation and encountered an error.  If I type the following at
the psql prompt (database and user are opf):

opf=> create function opf_user_fillin() returns opaque as '
opf'> begin
opf'> new.opf_user_id := nextval(opf_user_sequence);
opf'> return new;
opf'> end;
opf'> '
opf-> language 'plpgsql'
opf-> ;

I get the following error:

ERROR:  Unrecognized language specified in a CREATE FUNCTION: 'plpgsql'.
Recognized languages are sql, C, internal and the created procedural languages.

Can I enable the plpgsql language on my system?  If so, how?  If not,
what are my options (ie, what do I have to do to get plpgsql support)?

I'm pretty new to PostgreSQL but no stranger to compiling systems from source
(or writing the source for that matter).  I'm running a RedHat Linux 7.1 system
with the PostgreSQL that comes with the OS.

Thanks,
Kevin.


Re: ERROR: Unrecognized language specified ...

From
Stephan Szabo
Date:
You'll need to use createlang to add the handler.
IIRC, it's createlang <lang> <database>

On Tue, 9 Oct 2001, Kevin HaleBoyes wrote:

> I'm creating a function (for use in a trigger) from the example in the
> documentation and encountered an error.  If I type the following at
> the psql prompt (database and user are opf):
>
> opf=> create function opf_user_fillin() returns opaque as '
> opf'> begin
> opf'> new.opf_user_id := nextval(opf_user_sequence);
> opf'> return new;
> opf'> end;
> opf'> '
> opf-> language 'plpgsql'
> opf-> ;
>
> I get the following error:
>
> ERROR:  Unrecognized language specified in a CREATE FUNCTION: 'plpgsql'.
> Recognized languages are sql, C, internal and the created procedural languages.
>
> Can I enable the plpgsql language on my system?  If so, how?  If not,
> what are my options (ie, what do I have to do to get plpgsql support)?
>
> I'm pretty new to PostgreSQL but no stranger to compiling systems from source
> (or writing the source for that matter).  I'm running a RedHat Linux 7.1 system
> with the PostgreSQL that comes with the OS.


Re: ERROR: Unrecognized language specified ...

From
Bruce Momjian
Date:
> I'm creating a function (for use in a trigger) from the example in the
> documentation and encountered an error.  If I type the following at
> the psql prompt (database and user are opf):
>
> opf=> create function opf_user_fillin() returns opaque as '
> opf'> begin
> opf'> new.opf_user_id := nextval(opf_user_sequence);
> opf'> return new;
> opf'> end;
> opf'> '
> opf-> language 'plpgsql'
> opf-> ;
>
> I get the following error:
>
> ERROR:  Unrecognized language specified in a CREATE FUNCTION: 'plpgsql'.
> Recognized languages are sql, C, internal and the created procedural languages.
>
> Can I enable the plpgsql language on my system?  If so, how?  If not,
> what are my options (ie, what do I have to do to get plpgsql support)?
>
> I'm pretty new to PostgreSQL but no stranger to compiling systems from source
> (or writing the source for that matter).  I'm running a RedHat Linux 7.1 system
> with the PostgreSQL that comes with the OS.

Here is a classic case where we print an error message but don't give
the user enough information to find the solution.  I have just applied a
patch to show the proper info:

test=> create function xx() returns integer as 'asdf' language 'asdf';
ERROR:  Unrecognized language specified in a CREATE FUNCTION: 'asdf'.
        Pre-installed languages are SQL, C, and internal.
        Additional languages may be installed using 'createlang'.

If people find other messages that should point to solutions but don't,
please let us know.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026