SP2-0171: 帮助系统不可用

来源:互联网 发布:素媛用什么软件看 编辑:程序博客网 时间:2024/05/23 16:36

“SQL*PLUS帮助不可用”解决步骤

       SQL*PLUS是oracle管理数据库最常用的一个CMD界面,其中的帮助系统会给我们执行一些命令带来快捷的指导和帮助,在oracle安装时此功能是默认安装的。有时候由于一些意外原因会失去此项功能,使用帮助系统会出现下面的错误:

SP2-0171:帮助系统不可用。

以至于带来很多的不便和麻烦。下面是解决此问题的方法,也是官方推荐的方法步骤,在oracle帮助文档中均可获知,此处只是针对相应环境实践操作,给大家提供一个方便。

以system帐户登陆查询help情况:

SQL> conn XXX

输入口令:

已连接。

SQL> help

SP2-0171:帮助系统不可用。

下面是重建帮助系统的步骤:

1,执行$ORACLE_HOME/sqlplus/admin/help/hlpbld.sql脚本,创建help帮助内容的表模式。

SQL> @E:\app\Administrator\product\11.1.0\db_1\sqlplus\admin\help\hlpbld.sql

2,执行$ORACLE_HOME/sqlplus/admin/help/helpus.sql脚本,则自动填充help内容

SQL> @E:\app\Administrator\product\11.1.0\db_1\sqlplus\admin\help\helpus.sql

3,查看help,则SQL*PLUS,则帮助系统可用

SQL> help

HELP

----

Accesses this command line help system. Enter HELP INDEX or ? INDEX

for a list of topics.

You can view SQL*Plus resources at

    http://www.oracle.com/technology/tech/sql_plus/

and the Oracle Database Library at

    http://www.oracle.com/technology/documentation/

HELP|? [topic]

Help帮助系统实则查询的是一张system帐户维护的help表,我们如果打开hlpbld.sql脚本的仔细研究一下的话,既可以发现其三昧,如下表help模式定义摘取hepbld.sql脚本:

CREATE TABLE HELP

(

TOPIC VARCHAR2 (50)   NOT NULL,

SEQ  NUMBER        NOT NULL,

INFO VARCHAR2 (80)

) PCTFREE 0 STORAGE (INITIAL 48K PCTINCREASE 0);

Helpus.sql脚本则是对help表进行内容的insert.

以system帐户登陆也可查询其help表定义:

SQL> conn system

输入口令:

已连接。

SQL> desc help

名称                                     是否为空?类型

----------------------------------------- -------- -------------------------

TOPIC                                     NOT NULL VARCHAR2(50)

SEQ                                       NOT NULL NUMBER

INFO                                              VARCHAR2(80)

也可以验证help表的定义,正好是帮助系统的内容所在。

Ok,SQL*PLUS的帮助系统问题解决。