I hope to obtain the list of all the changes in the SAP HANA database in a productive environment, with the user who made each of those changes
- Through SQL query:
SELECT OH.OBJECT_NAME, OH.OBJECT_TYPE, OH.SCHEMA_NAME, OH.USER_NAME, OH.OPERATION_TYPE, OH. TIMESTAMP FROM SYS.M_OBJECT_HISTORY OH WHERE OH.IS_PRODUCED = 'TRUE' ORDER BY OH.TIMESTAMP DESC; - Through transaction SE16 and table E070.
I would appreciate it if you could tell me which option is the most viable and if that option is described correctly.
I do not have access to a productive environment to test the above.
You cannot obtain the changes to the database without additional logging and auditing, like executed statements trace in HANA.
Note that M_* are monitoring views that provide actual HANA runtime data, including statistics and status information related to the execution of DML statements. Above mentioned view M_OBJECT_HISTORY is not available.
There is a reference of all available system views of HANA: SAP HANA SQL Reference Guide for SAP HANA Platform
Table
E070holds the headers of requests / tasks of the transport system, so it will not help to retrieve the database changes directly. The example content of the table:But of course it is possible to go deeper and analyze every transport request's task objects.