Internally, row references are very similar to cursors, in fact they are little more than a wrapper around them. The essential difference is one of semantics: comparing row references compares contents, copying row references copies the contents, whereas cursor comparison and copying deals with the pointer to the row, not its contents.