public int deleteCascade(DataColumnConstraints constraints)
			throws SQLException {
		int count = 0;

		if (constraints != null) {

			// Check if the last remaining constraint with the constraint name
			// is being deleted
			List<DataColumnConstraints> remainingConstraints = queryByConstraintName(constraints
					.getConstraintName());
			if (remainingConstraints.size() == 1) {

				DataColumnConstraints remainingConstraint = remainingConstraints
						.get(0);

				// Compare the name, type, and value
				if (remainingConstraint.getConstraintName().equals(
						constraints.getConstraintName())
						&& remainingConstraint.getConstraintType().equals(
								constraints.getConstraintType())
						&& (remainingConstraint.getValue() == null ? constraints
								.getValue() == null : remainingConstraint
								.getValue().equals(constraints.getValue()))) {

					// Delete Data Columns
					DataColumnsDao dao = getDataColumnsDao();
					List<DataColumns> dataColumnsCollection = dao
							.queryByConstraintName(constraints
									.getConstraintName());
					if (!dataColumnsCollection.isEmpty()) {
						dao.delete(dataColumnsCollection);
					}
				}
			}

			// Delete
			count = delete(constraints);
		}
		return count;
	}
public int deleteCascade ( DataColumnConstraints constraints ) throws SQLException { int count = 0 ; if ( constraints != null ) { List < DataColumnConstraints > remainingConstraints = queryByConstraintName ( constraints . getConstraintName ( ) ) ; if ( remainingConstraints . size ( ) == 1 ) { DataColumnConstraints remainingConstraint = remainingConstraints . get ( 0 ) ; if ( remainingConstraint . getConstraintName ( ) . equals ( constraints . getConstraintName ( ) ) && remainingConstraint . getConstraintType ( ) . equals ( constraints . getConstraintType ( ) ) && ( remainingConstraint . getValue ( ) == null ? constraints . getValue ( ) == null : remainingConstraint . getValue ( ) . equals ( constraints . getValue ( ) ) ) ) { DataColumnsDao dao = getDataColumnsDao ( ) ; List < DataColumns > dataColumnsCollection = dao . queryByConstraintName ( constraints . getConstraintName ( ) ) ; if ( ! dataColumnsCollection . isEmpty ( ) ) { dao . delete ( dataColumnsCollection ) ; } } } count = delete ( constraints ) ; } return count ; }
Delete the Data Columns Constraints, cascading

@param constraints
data column constraints
@return deleted count
@throws SQLException
upon failure