Guardando el historial de una database SQL usando C #

No creo que deba publicar ningún código, pero si lo necesito, lo haré.

Creé un Windows Form en Visual Studio que crea un logging y lo guarda en una database. También agregué una function de actualización para poder cambiar el logging y save los cambios nuevos.

Lo que necesito saber es cómo crear algún tipo de historial de versiones. es decir, cuando hago clic en actualizar, quiero que guarde la versión anterior para que pueda mirar hacia atrás. Al igual que un rastreador de errores tiene un tipo de control de versión, pero mucho más simple (con suerte).

¿Necesitaría una database separada? ¿Podría tener otra vista de tabla de datos para que cuando se hace clic en un logging (o un button) se muestre el historial de cambios para ese logging?

He hecho muchas búsquedas en línea y simplemente no puedo encontrar cómo hacerlo o dónde search exactamente para encontrar esto.

Cualquier ayuda sería muy apreciada.

Gracias

usted está hablando de auditoría, mire esto: Enlace

Conozco este ejemplo para MVC, pero es la misma idea que solo se necesita una tabla para rastrear los cambios de toda la database utilizando objects json que representan "antes" y "después"