Correct Answer: A,B
In the case of SQL commands TRUNCATE and DELETE:
* A. the result of a delete can be undone by issuing a rollback: DELETE is a DML operation that affects rows individually and can be rolled back if it is performed within a transaction.
* B. delete can use a where clause to determine which row(s) should be removed: DELETE operation allows the use of a WHERE clause to specify which rows should be deleted based on certain conditions.
Incorrect options are:
* C: TRUNCATE does not support the use of a WHERE clause. It is designed to remove all rows from a table swiftly and cannot be conditional.
* D: TRUNCATE does not leave indexes in an unusable state; it simply removes all rows.
* E: TRUNCATE is a DDL command and its operation typically cannot be rolled back in many SQL database systems, including Oracle.