Cause: In a precompiled program, the
DECLARE TABLE statement was mistakenly used inside an embedded PL/SQL block.
If an embedded PL/SQL block refers to a database table that does not yet
exist, use the DECLARE TABLE statement to tell the precompiler what the table
will look like. However, DECLARE TABLE statements are allowed only in the host
program.
Action: Move the DECLARE TABLE statement
outside the embedded PL/SQL block. If you want a variable that can store an
entire row of data selected from a database table or fetched from a cursor or
cursor variable, use the %ROWTYPE attribute.


Relared Errors:
PLS-00315:
Implementation restriction: unsupported table index type

PLS-00316:
PL/SQL TABLEs must use a single index

PLS-00317:
incomplete type string was not completed in its declarative
region

PLS-00318: type
string is malformed because it is a non-REF mutually recursive
type

PLS-00319:
subquery in an IN or NOT IN clause must contain exactly one
column

PLS-00320: the
declaration of the type of this expression is incomplete or
malformed

PLS-00321:
expression `string` is inappropriate as the left hand side of an
assignmen

PLS-00322:
declaration of a constant `string` must contain an initialization
assignme

PLS-00323:
subprogram or cursor `string` is declared in a package specification
and m

PLS-00324:
cursor attribute may not be applied to non-cursor
`string`