Oracle Error Message
PLS-00229: Attribute expression within SQL expression
Reason for the Error
An attribute expression, such as SQL%NOTFOUND, was used in a SQL statement, but attribute expressions are allowed only in procedural statements.
Solution
To workaround this limitation, assign the value of the attribute expression to a variable, then use the variable in the SQL statement. For example, replace the statement INSERT INTO audits VALUES (c1%ROWCOUNT, …); with the following statements: row_count := c1%ROWCOUNT; INSERT INTO audits VALUES (row_count, …);