You can use CURRVAL and NEXTVAL in:
* The SELECT list of a SELECT statement that is not contained in a subquery, materialized view, or view
* The SELECT list of a subquery in an INSERT statement
* The VALUES clause of an INSERT statement
* The SET clause of an UPDATE statement
Restrictions: You cannot use CURRVAL and NEXTVAL:
* A subquery in a DELETE, SELECT, or UPDATE statement
* A query of a view or of a materialized view
* A SELECT statement with the DISTINCT operator
* A SELECT statement with a GROUP BY clause or ORDER BY clause
* A SELECT statement that is combined with another SELECT statement with the UNION, INTERSECT, or MINUS set operator
* The WHERE clause of a SELECT statement
* DEFAULT value of a column in a CREATE TABLE or ALTER TABLE statement
* The condition of a CHECK constraint
Also, within a single sql statement that uses CURRVAL or NEXTVAL, all referenced LONG columns, updated tables, and locked tables must be located on the same database.
* The SELECT list of a SELECT statement that is not contained in a subquery, materialized view, or view
* The SELECT list of a subquery in an INSERT statement
* The VALUES clause of an INSERT statement
* The SET clause of an UPDATE statement
Restrictions: You cannot use CURRVAL and NEXTVAL:
* A subquery in a DELETE, SELECT, or UPDATE statement
* A query of a view or of a materialized view
* A SELECT statement with the DISTINCT operator
* A SELECT statement with a GROUP BY clause or ORDER BY clause
* A SELECT statement that is combined with another SELECT statement with the UNION, INTERSECT, or MINUS set operator
* The WHERE clause of a SELECT statement
* DEFAULT value of a column in a CREATE TABLE or ALTER TABLE statement
* The condition of a CHECK constraint
Also, within a single sql statement that uses CURRVAL or NEXTVAL, all referenced LONG columns, updated tables, and locked tables must be located on the same database.
No comments:
Post a Comment
Please Provide your feedback here