sql >> Databasteknik >  >> RDS >> Sqlserver

Ändra datainsamling endast för uppdateringar och borttagningar

Jag skulle bara använda en trigger för att fånga uppdateringar och raderingar.

Jag tror inte att du kan tala om för CDC vilken DML du ska vara uppmärksam på, och jag tycker att det är ganska slösaktigt att låta CDC spela in alla dessa inlägg bara för att radera dem efteråt. Det i och för sig är dyrt och fragmenteringen det kommer att orsaka kommer också att orsaka problem för alla frågor du kör mot fångsttabellerna (du kommer att ha massor av mestadels tomma sidor) liksom arbetsstatistiken kommer att behöva göra för att ständigt hålla statistiken uppdaterad.

Du kan eventuellt sätta en i stället för att infoga utlösaren på fångsttabellen, som bara inte gör någonting, men jag har inte försökt göra detta för att ens se om det är tillåtet, och jag vet verkligen inte vilken inverkan det kommer att ha på CDC-funktioner. Möjligen värt att undersöka, men mitt ursprungliga svar kvarstår även om detta hack fungerar:använd bara en trigger.



  1. Hur kan jag generera (eller få) ett ddl-skript på en befintlig tabell i Oracle? Jag måste återskapa dem i Hive

  2. virtualenv som kan hitta flyttade bibliotek (som mysqlclient lib för MySQLdb)

  3. postgresql migrerar JSON till JSONB

  4. Komma igång med GearHost för MySQL-databasutveckling