How to fix the Oracle error PLS-00900: can’t find body of unit ‘string’?

In this post, you’ll learn more about the Oracle ErrorPLS-00900: can’t find body of unit ‘string’ with the details on why you receive this error and the possible solution to fix it.

Oracle Error Description

PLS-00900: can’t find body of unit ‘string’

Reason for the Error PLS-00900: can’t find body of unit ‘string’

At run time, the body of a program unit could not be found. This can happen for one of two reasons. — First, there may be a unit ‘a’ which calls a module ‘b’, where the spec for ‘b’ exists but not the body. In this case, since the spec is present, there will be no compile-time errors. — Secondly, this can occur if there is a reference to a sequence outside of the proper context such as a SQL statement. In this case, the “spec” of the sequence reference can be found, but it is invalid to actually run code which references the sequence outside a SQL statement, as in: i := seq.nextval;

How to fix the Error PLS-00900: can’t find body of unit ‘string’ ?

You can fix this error in Oracle by following the below steps

If caused by the first reason, create a body for the object that is being referenced. If caused by the second reason, move the sequence into a SQL statement. For example, i := seq.nextval; can be replaced by: select seq.nextval into temp from dual; i := temp;

Tags :

Leave Your Comment