För en tid sedan, på grund av behovet, behövde datan i databas A migreras till databas B för att göra datan i båda databaserna likadan. Jag använde SSIS för att slutföra den, eftersom det var en ny tabell som jag skapade vid den tiden, så när jag skapade tabellen lade jag till rowversionsfältet för att skilja vilka dataskillnader mellan A- och B-databaser, och migrerade bara data med olika versionsnummer utan att kopiera hela tabellen för att förbättra effektiviteten. Det är dock inte alltid nödvändigt att arbeta på en ny tabell, till exempel när vi behöver använda en befintlig tabell finns det inget radversionsfält i denna tabell för att skilja mellan gammal och ny data, vad ska vi då göra?
Faktum är att innan jag kontaktade SQL Server-databasen använde jag Mysql-databasen, som hade en binlog för att registrera vilken data som manipulerades, men sqlserver hade ingen binlog, den hade en transaktionsloggfil. Transaktionsloggfilen är en fil som används för att registrera databasuppdateringar, med filändelsen ldf. Du kan komprimera loggarna och använda ett tredjepartsverktyg för att visa loggarna. Till exempel, logga utforska för att se SQL-loggfiler.
För en detaljerad titt på Thing Log, kolla in den här bloggen https://www.cnblogs.com/CareySon/archive/2012/02/14/2351149.html
|