Re: Which table in Alfresco contains document approvers list?
If you are talking about approving a document via a workflow, then there is no single table that holds that data. Instead it is quite distributed. You have the Activiti tables act_ru_variable, act_hi_varinst and act_hi_detail that contain the active/historic workflow variables as well as change data for processes / tasks - if the approver is stored as workflow data you may find it here. Also, to find a workflow associated with the document you first may have to check the variables to see where the document is linked or where a special "workflow package" folder that contains the document is referenced. The act_ru_identitylink / act_hi_identitylink tables contain candidate user / group assignments, whereas the current/last assignee of a task is stored in act_ru_task / act_hi_taskinst - the last assignee of an approval task would typically be an approver of the document / process. Users are typically stored via their user name, so you'd have to resolve that to the other properties of a user via the alf_node_properties table that stores node metadata - you'd need to check the property cm:userName and use the resulting node_id to load/group the other properties of that person.
All in all, I hope you can see that getting the data from the tables directly is quite a hassle due to the data normalisation. It is far better to get the data via the Alfresco APIs.