A script-enabled browser is required for this page to function properly.

PL/SQL conversion utility: Standard package function no longer used

In PL/SQL V1, you could call the FLOOR function from your own package, p1, like this:

v : = p1.FLOOR(x).

If the p1 package did not have a function called FLOOR, PL/SQL used the FLOOR function in the standard package. This was actually a PL/SQL coding error that has been fixed in PL/SQL V2.3 or later. Therefore, in PL/SQL V2.3, the compiler does not check the standard package for the function name, but correctly reports the situation as an error:

ERROR 302: component ‘CCCCC’ must be declared

. . . where ‘CCCCCis the function or procedure name that exists in a standard package or standard package extension.

The message Incorrect references will resolve to built-in package V1 is written to the log.

To direct the compiler to the standard package, remove the incorrect package name.

Example: Removing the package prefix

This example first presents V1 PL/SQL code that will generate a compiler error, then shows how you might edit the code to avoid the error.

Change this code:

PACKAGE pk1 IS a NUMBER;
END;

PROCEDURE p IS v NUMBER;
BEGIN
  v := pk1.FLOOR(20.5);
END;

. . . to this:

PACKAGE pk1 IS a NUMBER;
END;

PROCEDURE p IS v NUMBER;
BEGIN
  v := FLOOR(20.5); Prefix removed
END;

See also

About the PL/SQL conversion utility