nina: mysql: duplicate and change

hallo!
gern würde ich bei jedem änderungsvorgang:
eine "kopie"/ein duplikat des datensatzes erzeugen (->mit einer neuen/eigenen ID) und mit einigen änderungen, sofern diese vorhanden sind.
sind keine änderungen vorhanden, so soll das ganze gleich wieder vergessen werden: also auch kein duplikat erstellen, wenn alles beim alten bleibt...
gibts da ne mysql funktion, die das kann, oder muss ich alles von hand machen: erst vergleichen mit aktuellem DS, dann neuen mit selben werten erstellen (sofern nötig), und diesen dann ändern...
danke für tipps