From: | Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | olly(at)lfix(dot)co(dot)uk (Oliver Elphick) |
Cc: | ser(at)nsu(dot)ru, Pgsql-General(at)hub(dot)org |
Subject: | Re: [GENERAL] PL/pgSQL |
Date: | 1998-12-13 05:23:43 |
Message-ID: | 199812130523.AAA15450@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Added to src/pl/plpgsql in both trees. It is not installed
automatically. Can someone figure out how this should be handled?
> Bruce Momjian wrote:
> >> First: I have to install plpgsql language on every database,
> >> I wonder, if I can install it for everyone.
> >
> >If you put it in template1, then every new database gets it.
>
> As a contribution, here is a script to do this for existing databases
> (including template1):
>
> =================== begin script enable_pgpl ==============================
> #!/bin/sh
>
> # Enable the PL procedural language for PostgreSQL in one or more
> # existing databases.
> #
> # This script should be run by the PostgreSQL superuser
>
> enable_database() {
> if ! psql -d $1 -qtc "select count(*) from pg_language where lanname='plpgsql'" >$TMPFIL2 2>&1
> then
> echo "Cannot connect to $1"
> exit 2
> fi
> if [ `cat $TMPFIL2` -eq 0 ]
> then
> if ! psql -d $1 <$sqlfile
> then
> echo "Failed to add PL to $1"
> exit 2
> fi
> echo "PL added to $1"
> else
> echo "PL is already enabled in $1"
> fi
>
> }
>
> # Execution starts here
>
> TMPFILE=`mktemp /tmp/enable_pgpl.XXXXXX`
> TMPFIL2=`mktemp /tmp/enable_pgpl.XXXXXX`
> trap "rm $TMPFILE $TMPFIL2" EXIT
>
> sqlfile=${PGLIB:=/usr/local/pgsql/lib}/mklang_pl.sql
> if [ ! -f $sqlfile ]
> then
> echo "Cannot find mklang_pl.sql"
> exit 2
> fi
>
> if [ -z "$1" ]
> then
> echo "Syntax: $0 --all | database ..."
> exit 1
> fi
>
> if [ $1 = "--all" ]
> then
> if ! psql -t -c "select datname from pg_database order by datname" >$TMPFILE
> then
> echo Cannot select databases
> exit 2
> fi
> for db in `cat $TMPFILE`
> do
> enable_database $db
> done
> else
> while [ -n "$1" ]
> do
> db=$1
> enable_database $db
> shift
> done
> fi
> ========================= end ================================
>
> --
> Oliver Elphick Oliver(dot)Elphick(at)lfix(dot)co(dot)uk
> Isle of Wight http://www.lfix.co.uk/oliver
> PGP key from public servers; key ID 32B8FAA1
> ========================================
> "Be of good courage, and he shall strengthen your
> heart, all ye that hope in the LORD."
> Psalms 31:24
>
>
>
--
Bruce Momjian | http://www.op.net/~candle
maillist(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
From | Date | Subject | |
---|---|---|---|
Next Message | Clark Evans | 1998-12-13 06:55:13 | Introduction: Accounting/Bookeeping Project |
Previous Message | Bruce Momjian | 1998-12-13 04:44:59 | Re: [GENERAL] Announce: PyGreSQL 2.2 |