OK. Robię aktualizację w jednym wierszu w tabeli. Wszystkie pola zostaną nadpisane nowymi danymi oprócz klucza podstawowego. Jednak nie wszystkie wartości zmienią b/c aktualizacji. Na przykład, jeśli tabela przedstawia się następująco:T-SQL: co zmieniono COLUMNS po aktualizacji?
TABLE (id int ident, foo varchar(50), bar varchar(50))
Wartość początkowa wynosi:
id foo bar
-----------------
1 hi there
I następnie wykonać UPDATE tbl SET foo = 'hi', bar = 'something else' WHERE id = 1
Co chcę wiedzieć, co kolumna była jego wartość zmienione i jaka była jego pierwotna wartość oraz jaka jest jego nowa wartość.
W powyższym przykładzie chciałbym zobaczyć, że kolumna "pasek" została zmieniona z "tam" na "coś innego".
Możliwe bez porównywania kolumn według kolumn? Czy istnieje elegancki komunikat SQL, taki jak EXCEPT, który będzie bardziej szczegółowy niż tylko wiersz?
Dzięki.
Zwyczajowo zostawia się notatkę, gdy się zgłasza, ludzie. Nie bądź palantem, co dokładnie było nie tak z tą odpowiedzią? – Aaronaught
Dzięki za informacje. Szukałem specjalnego oświadczenia, ale jeśli nie ma, myślę, że będę musiał brutalnie zmusić go do działania tak jak powyżej. – Calvin