Prieš kurį laiką dėl poreikio duomenų bazėje A esančius duomenis reikia perkelti į duomenų bazę B, kad abiejų duomenų bazių duomenys būtų vienodi. Aš naudojau SSIS, kad jį užbaigčiau, nes tuo metu tai buvo nauja lentelė, kurią sukūriau pats, todėl kurdamas lentelę pridėjau eilutės versijos lauką, kad atskirčiau, kokie duomenys skiriasi tarp A ir B duomenų bazių, ir perkėliau duomenis tik su skirtingais versijų numeriais, nekopijuodamas visos lentelės, kad pagerinčiau efektyvumą. Tačiau ne visada reikia dirbti su nauja lentele, pavyzdžiui, kai reikia valdyti esamą lentelę, šioje lentelėje nėra eilutės versijos lauko, kad būtų galima atskirti senus ir naujus duomenis, ką tada daryti?
Tiesą sakant, prieš kreipdamasis į SQL serverio duomenų bazę, aš naudojau Mysql duomenų bazę, kuri turėtų binlog įrašyti, kokie duomenys buvo manipuliuojami, bet sqlserver neturėjo binlog, jis turėjo operacijų žurnalo failą baiTransaction Log File yra failas, naudojamas įrašyti duomenų bazės atnaujinimus, su plėtiniu ldf. Galite suspausti žurnalus ir naudoti trečiosios šalies įrankį, kad peržiūrėtumėte žurnalus. Pavyzdžiui, naršykite žurnalą, kad peržiūrėtumėte SQL žurnalo failus.
Norėdami išsamiai pažvelgti į daiktų žurnalą, peržiūrėkite šį tinklaraščio https://www.cnblogs.com/CareySon/archive/2012/02/14/2351149.html
|