aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bin/scripts/createlang.sh46
-rw-r--r--src/bin/scripts/droplang47
2 files changed, 69 insertions, 24 deletions
diff --git a/src/bin/scripts/createlang.sh b/src/bin/scripts/createlang.sh
index c9b4178fda7..c3100e2b683 100644
--- a/src/bin/scripts/createlang.sh
+++ b/src/bin/scripts/createlang.sh
@@ -1,15 +1,13 @@
-#!/bin/sh
+#! /bin/sh
#-------------------------------------------------------------------------
#
-# createlang.sh--
-# Install a procedural language in a database
+# createlang --
+# Install a procedural language in a database
#
# Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
# Portions Copyright (c) 1994, Regents of the University of California
#
-#
-# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createlang.sh,v 1.23 2001/02/18 18:34:01 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createlang.sh,v 1.24 2001/05/09 22:08:19 petere Exp $
#
#-------------------------------------------------------------------------
@@ -20,6 +18,7 @@ PSQLOPT=
dbname=
langname=
list=
+showsql=
# Check for echo -n vs echo \c
@@ -97,6 +96,9 @@ do
--pglib=*)
PGLIB=`echo "$1" | sed 's/^--pglib=//'`
;;
+ --echo|-e)
+ showsql=yes
+ ;;
-*)
echo "$CMDNAME: invalid option: $1" 1>&2
@@ -146,7 +148,7 @@ fi
# ----------
if [ -z "$dbname" ]; then
echo "$CMDNAME: missing required argument database name" 1>&2
- echo "Try '$CMDNAME -?' for help." 1>&2
+ echo "Try '$CMDNAME --help' for help." 1>&2
exit 1
fi
@@ -155,7 +157,11 @@ fi
# List option
# ----------
if [ "$list" ]; then
- ${PATHNAME}psql $PSQLOPT -d "$dbname" -P 'title=Procedural languages' -c "SELECT lanname as \"Name\", lanpltrusted as \"Trusted?\", lancompiler as \"Compiler\" FROM pg_language WHERE lanispl = 't'"
+ sqlcmd="SELECT lanname as \"Name\", lanpltrusted as \"Trusted?\", lancompiler as \"Compiler\" FROM pg_language WHERE lanispl = 't';"
+ if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+ fi
+ ${PATHNAME}psql $PSQLOPT -d "$dbname" -P 'title=Procedural languages' -c "$sqlcmd"
exit $?
fi
@@ -237,7 +243,11 @@ PSQL="${PATHNAME}psql -A -t -q $PSQLOPT -d $dbname -c"
# ----------
# Make sure the language isn't already installed
# ----------
-res=`$PSQL "SELECT oid FROM pg_language WHERE lanname = '$langname'"`
+sqlcmd="SELECT oid FROM pg_language WHERE lanname = '$langname';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+res=`$PSQL "$sqlcmd"`
if [ $? -ne 0 ]; then
echo "$CMDNAME: external error" 1>&2
exit 1
@@ -251,7 +261,11 @@ fi
# ----------
# Check that there is no function named as the call handler
# ----------
-res=`$PSQL "SELECT oid FROM pg_proc WHERE proname = '$handler'"`
+sqlcmd="SELECT oid FROM pg_proc WHERE proname = '$handler';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+res=`$PSQL "$sqlcmd"`
if [ ! -z "$res" ]; then
echo "$CMDNAME: A function named '$handler' already exists. Installation aborted." 1>&2
exit 1
@@ -260,13 +274,21 @@ fi
# ----------
# Create the call handler and the language
# ----------
-$PSQL "CREATE FUNCTION $handler () RETURNS OPAQUE AS '$PGLIB/${object}$DLSUFFIX' LANGUAGE 'C'"
+sqlcmd="CREATE FUNCTION $handler () RETURNS OPAQUE AS '$PGLIB/${object}$DLSUFFIX' LANGUAGE 'C';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+$PSQL "$sqlcmd"
if [ $? -ne 0 ]; then
echo "$CMDNAME: language installation failed" 1>&2
exit 1
fi
-$PSQL "CREATE ${trusted}PROCEDURAL LANGUAGE '$langname' HANDLER $handler LANCOMPILER '$lancomp'"
+sqlcmd="CREATE ${trusted}PROCEDURAL LANGUAGE '$langname' HANDLER $handler LANCOMPILER '$lancomp';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+$PSQL "$sqlcmd"
if [ $? -ne 0 ]; then
echo "$CMDNAME: language installation failed" 1>&2
exit 1
diff --git a/src/bin/scripts/droplang b/src/bin/scripts/droplang
index e06051d5d0a..04b9f7344a4 100644
--- a/src/bin/scripts/droplang
+++ b/src/bin/scripts/droplang
@@ -1,15 +1,13 @@
-#!/bin/sh
+#! /bin/sh
#-------------------------------------------------------------------------
#
-# createlang--
-# Remove a procedural language from a database
+# droplang --
+# Remove a procedural language from a database
#
# Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
# Portions Copyright (c) 1994, Regents of the University of California
#
-#
-# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/droplang,v 1.13 2001/02/18 18:34:01 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/droplang,v 1.14 2001/05/09 22:08:19 petere Exp $
#
#-------------------------------------------------------------------------
@@ -21,6 +19,7 @@ dbname=
langname=
echo=
list=
+showsql=
# Check for echo -n vs echo \c
@@ -87,6 +86,9 @@ do
--dbname=*)
dbname=`echo "$1" | sed 's/^--dbname=//'`
;;
+ --echo|-e)
+ showsql=yes
+ ;;
-*)
echo "$CMDNAME: invalid option: $1" 1>&2
@@ -128,7 +130,11 @@ fi
if [ "$list" ]; then
- ${PATHNAME}psql $PSQLOPT -d "$dbname" -P 'title=Procedural languages' -c "SELECT lanname as \"Name\", lanpltrusted as \"Trusted?\", lancompiler as \"Compiler\" FROM pg_language WHERE lanispl = 't'"
+ sqlcmd="SELECT lanname as \"Name\", lanpltrusted as \"Trusted?\", lancompiler as \"Compiler\" FROM pg_language WHERE lanispl = 't'"
+ if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+ fi
+ ${PATHNAME}psql $PSQLOPT -d "$dbname" -P 'title=Procedural languages' -c "$sqlcmd"
exit $?
fi
@@ -138,7 +144,7 @@ fi
# ----------
if [ -z "$dbname" ]; then
echo "$CMDNAME: missing required argument database name" 1>&2
- echo "Try '$CMDNAME -?' for help." 1>&2
+ echo "Try '$CMDNAME --help' for help." 1>&2
exit 1
fi
@@ -185,7 +191,11 @@ PSQL="${PATHNAME}psql -A -t -q $PSQLOPT -d $dbname -c"
# ----------
# Make sure the language is installed
# ----------
-res=`$PSQL "SELECT oid FROM pg_language WHERE lanname = '$langname'"`
+sqlcmd="SELECT oid FROM pg_language WHERE lanname = '$langname';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+res=`$PSQL "$sqlcmd"`
if [ $? -ne 0 ]; then
echo "$CMDNAME: external error" 1>&2
exit 1
@@ -199,7 +209,11 @@ fi
# ----------
# Check that there are no functions left defined in that language
# ----------
-res=`$PSQL "SELECT COUNT(proname) FROM pg_proc P, pg_language L WHERE P.prolang = L.oid AND L.lanname = '$langname'"`
+sqlcmd="SELECT COUNT(proname) FROM pg_proc P, pg_language L WHERE P.prolang = L.oid AND L.lanname = '$langname';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+res=`$PSQL "$sqlcmd"`
if [ $? -ne 0 ]; then
echo "$CMDNAME: external error" 1>&2
exit 1
@@ -213,12 +227,21 @@ fi
# ----------
# Drop the language and the call handler function
# ----------
-$PSQL "DROP PROCEDURAL LANGUAGE '$langname'"
+sqlcmd="DROP PROCEDURAL LANGUAGE '$langname';"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+$PSQL "$sqlcmd"
if [ $? -ne 0 ]; then
echo "$CMDNAME: language removal failed" 1>&2
exit 1
fi
-$PSQL "DROP FUNCTION $handler()"
+
+sqlcmd="DROP FUNCTION $handler();"
+if [ "$showsql" = yes ]; then
+ echo "$sqlcmd"
+fi
+$PSQL "$sqlcmd"
if [ $? -ne 0 ]; then
echo "$CMDNAME: language removal failed" 1>&2
exit 1