Result executeDeleteStatement ( Session session ) { int count = 0 ; RowSetNavigatorLinkedList oldRows = new RowSetNavigatorLinkedList ( ) ; RangeIterator it = RangeVariable . getIterator ( session , targetRangeVariables ) ; while ( it . next ( ) ) { Row currentRow = it . getCurrentRow ( ) ; oldRows . add ( currentRow ) ; } count = delete ( session , baseTable , oldRows ) ; if ( restartIdentity && targetTable . identitySequence != null ) { targetTable . identitySequence . reset ( ) ; } return Result . getUpdateCountResult ( count ) ; }
Executes a DELETE statement . It is assumed that the argument is of the correct type .