[转]PLS-S-00201, identifier 'CALLDEMO.GET_EMPLOYEES' must be declared 预编译错误原因及解决办法

Posted iw1210

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转]PLS-S-00201, identifier 'CALLDEMO.GET_EMPLOYEES' must be declared 预编译错误原因及解决办法相关的知识,希望对你有一定的参考价值。

$ proc sample9.pc SQLCHECK=SEMANTICS

Pro*C/C++: Release 11.2.0.1.0 - Production on Tue Jan 8 15:18:40 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

System default option values taken from: /usr/local/oracle/product/11.2.0/dbhome_1/precomp/admin/pcscfg.cfg

Error at line 116, column 19 in file sample9.pc
            BEGIN calldemo.get_employees
..................1
PLS-S-00201, identifier 'CALLDEMO.GET_EMPLOYEES' must be declared
Error at line 116, column 19 in file sample9.pc
            BEGIN calldemo.get_employees
..................1
PLS-S-00000, Statement ignored
Semantic error at line 116, column 13, file sample9.pc:
            BEGIN calldemo.get_employees
............1
PCC-S-02346, PL/SQL found semantic errors

$


错误原因:需要指定 “CALLDEMO.GET_EMPLOYEES” 的所属用户。

解决办法:在预编译时加上 userid=name/passwd@remoteDB (如果是连接到本地数据库则不需要@remoteDB)。


如上面的例子:

$ proc  sample9.pc SQLCHECK=SEMANTICS userid=scott/tiger


Pro*C/C++: Release 11.2.0.1.0 - Production on Tue Jan 8 15:25:20 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

System default option values taken from: /usr/local/oracle/product/11.2.0/dbhome_1/precomp/admin/pcscfg.cfg

$

编译通过!


以上是关于[转]PLS-S-00201, identifier 'CALLDEMO.GET_EMPLOYEES' must be declared 预编译错误原因及解决办法的主要内容,如果未能解决你的问题,请参考以下文章

转iOS开发者申请发布证书及真机调试图文详解

flash cs4 错误提示1084: 语法错误: identifier 应在 semicolon 之前。

PHPExcel 转HTML

解决a different object with the same identifier value was already associated with the session错误

mysql 用户管理和权限设置(转)

javascrip变量和标识符