A cursor FOR loop automatically handles: declaring a record type variable, opening the cursor, parsing SQL, fetching records, and closing the cursor when done. The only thing it does NOT require is an explicit exit condition - the loop terminates automatically when all rows are fetched. This makes Option D the correct answer.