I had a requirement to display records in a pageblocktable, and if the user has the access to that record then the Record Name should be displayed as a Link(redirect to the record detail page) and if he doesn't has the access it should display as a text field.
Usually the aaproach would be to use the SObject_share to query the user's accessibility over that record, But how it would differ if we get the results using "UserRecordAccess" object to get the list of user's accessible records.
Approach for the solution was, to get all the records on a search page. Comparing the records querying SObject_Share / UserRecordAccess and mapping the same with earlier list and have a checkbox(true/false) based on the value of the checkbox Name would be displayed as Link or Text.
Can anyone tell me how much it differs querying an SObject and UserRecordAccess?