The description of CONSTRAINT clause in reference manual seems to have error ----------------------------------------------------------------------------
Key: DERBY-3121 URL: https://issues.apache.org/jira/browse/DERBY-3121 Project: Derby Issue Type: Bug Components: Documentation Environment: http://db.apache.org/derby/docs/dev/ref/rrefsqlj13590.html Reporter: Tomohito Nakayama Reading page of Reference manual for CONSTRAINT clause, I found questionable part in "Referential actions". http://db.apache.org/derby/docs/dev/ref/rrefsqlj13590.html Questionable part is as next. ============== The update rule applies when a row of either the parent or dependent table is updated. The choices are NO ACTION and RESTRICT. <snip> If the update rule is NO ACTION, Derby checks the dependent tables for foreign key constraints /after/ all deletes have been executed but /before/ triggers have been executed. If any row in a dependent table violates a foreign key constraint, the statement is rejected. <snip> The delete rule applies when a row of the parent table is deleted and that row has dependents in the dependent table of the referential constraint. If rows of the dependent table are deleted, the delete operation on the parent table is said to be /propagated/ to the dependent table. If the dependent table is also a parent table, the action specified applies, in turn, to its dependents. ============== What I'm not sure is next sentence in above. ============== If the update rule is NO ACTION, Derby checks the dependent tables for foreign key constraints */after/ all deletes* have been executed but /before/ triggers have been executed. If any row in a dependent table violates a foreign key constraint, the statement is rejected. ============== I'm not sure why is "after all deletes" for "update". I think this may be mistake . -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.