oracle安装sqlplus的help帮助系统

本文介绍如何为SQL*Plus安装帮助系统。通过运行特定脚本和设置环境变量,可以在Oracle数据库中加载帮助信息。文章详细解释了helpbld.sql等脚本的作用及执行步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 我们在使用sqlplus的时候可以通过help或?获得帮助信息,那么这些帮助信息是哪来的呢?

        其实sqlplus的帮助信息从是 数据库里表(system.help)里获取的。在$ORACLE_HOME/sqlplus/admin/help 目录下的helpus.sql文件里包含的帮助的信息,不过 oracle默认带的帮助信息太少,自己可以通过其它途径获取更全的帮助脚本。那么我们自己如何来 安装帮助呢?下面以系统自带的脚本为例来演示安装过程。
所有用的 sql脚本都保存在 $ORACLE_HOME/sqlplus/admin/help 目录下,包含了四个文件:helpbld.sql  helpdrop.sql  helpus.sql  hlpbld.sql,第一个helpbld.sql实际是调用第四个脚本hlpbld.sql来进行安装的,helpdrop.sql是删除help表和HELP_TEMP_VIEW视图的脚本,helpus.sql是安装的帮助信息。如果自己找到其它更全的脚本也放到这个目录下,便于 管理
        因为help表是存在于oracle数据库里的,所以我们要保证oracle数据库已经启动,而且安装了sqlplus。之后以system身份登录在执行安装脚本helpbld.sql或hlpbld.sql均可。我们在执行脚本的时候需要输入两个参数
SQL> @ ?/sqlplus/admin/help/helpbld.sql                          
Enter value for 1: $ORACLE_HOME/sqlplus/admin/help
Enter value for 2: $ORACLE_HOME/sqlplus/admin/help/helpus.sql
 
Enter value for 1: 帮助系统脚本所在目录
Enter value for 2: 帮助系统内容脚本
运行后sqlplus的help帮助系统就装好了。
 
也可以用另外方法安装,设置环境变量
SYSTEM_PASS=SYSTEM/ password
EXPORT SYSTEM_PASS
然后运行$ORACLE_HOME/bin/helpins脚本也实现安装。
 
其实上面所有的安装过程都可以通过helpins脚本分析得到。内容如下可以读一遍自然晓得其中奥秘。
附录:
[oracle@rhel5 bin]$ cat helpins
:
#
# Copyright (c) 1988, 2003, Oracle Corporation.  All rights reserved. 
#
# NAME
#   helpins
#
# DESCRIPTION
#   Script. to install the SQL*Plus HELP system
#
# USAGE
#   If you want to load the English language data file ("helpus.sql"),
#   and the SYSTEM schema's password is "manager" then execute these
#   commands at the operating system prompt:
#
#        ./helpins system manager us
#
#   This assumes you have set your default environment (e.g
#   ORACLE_HOME, ORACLE_SID) to connect to the correct database.
#
#   The first argument should always be SYSTEM
#
#   The third argument to this script. specifies the language for the
#   HELP system.  The available language files are in
#   $ORACLE_HOME/admin/help.

#  Display abort message on interupt
trap 'echo "^G^G Help installation aborted."; exit' 1 2 3 15
#  Check to make sure that required variables are set.
#  If they are not, prompt user to set them and restart install
case $ORACLE_HOME in
    "") echo "ORACLE_HOME not set."
        echo "Set and export ORACLE_HOME, then restart help installation."
        exit 1 ;;
esac
if [ $# -eq 0 ]; then
  case $SYSTEM_PASS in
    "") echo "SYSTEM_PASS environment variable not set."
        echo "Installing HELP into the SYSTEM schema"
        PASSWD=""
        while [ -z "$PASSWD" ]
        do
            echo "Enter SYSTEM passwd: "
            read PASSWD
        done
        SYSTEM_PASS="system/$PASSWD";;
  esac
  HELPLANG="us"
elif [ $# -eq 3 ]; then
  SYSTEM_PASS="$1"/"$2";
  export SYSTEM_PASS
  HELPLANG="$3"
else
  echo "Usage: $0 system <system_password> <language>" >&1
  exit 1
fi
#  Default to US if we can't find the specified language file
HELPDIR=$ORACLE_HOME/sqlplus/admin/help
HELPFILE=$HELPDIR/helpbld.sql
HELPDATA=$HELPDIR/help${HELPLANG}.sql
[ ! -f "$HELPDATA" ] &&
    { echo "Help file $HELPDATA not found"
      HELPDATA=$HELPDIR/helpus.sql;
      echo "Using $HELPDATA"
 }
[ ! -f "$HELPDATA" ] &&
    { echo "Help file $HELPDATA not found"
      exit 1 ; }
#
#  Load the HELP system
#
$ORACLE_HOME/bin/sqlplus "$SYSTEM_PASS" @"$HELPFILE" "$HELPDIR" "$HELPDATA"
exit $?

转载于:https://www.cnblogs.com/wbzhao/archive/2012/03/23/2414260.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值