sql >> Database teknologi >  >> RDS >> Sqlserver

Skift datafangst kun for opdateringer og sletninger

Jeg ville bare bruge en trigger til at fange opdateringer og sletninger.

Jeg tror ikke, du kan fortælle CDC, hvilken DML, du skal være opmærksom på, og jeg synes, det er ret spildende at lade CDC optage alle disse inserts kun for at slette dem bagefter. Det er i sig selv dyrt, og den fragmentering, det vil forårsage, vil også forårsage problemer for alle forespørgsler, du kører mod opsamlingstabellerne (du vil have masser af for det meste tomme sider), såvel som arbejdsstatistikkerne skal gøre for konstant at hold statistikken opdateret.

Du kan muligvis sætte en i stedet for at indsætte trigger på optagelsestabellen, som bare ikke gør noget, men jeg har ikke prøvet at gøre dette for overhovedet at se, om det er tilladt, og jeg ved bestemt ikke, hvilken indflydelse det vil have på CDC funktioner. Muligvis værd at undersøge, men mit oprindelige svar står stadig, selvom dette hack virker:brug bare en trigger.



  1. Oracle PL\SQL Null Input Parameter WHERE-tilstand

  2. Sådan vedhæfter du en SQL Server-database fra kommandolinjen

  3. Postgresql:FORBERED TRANSAKTION

  4. hvordan man undslipper input, men gemmer uescaped i databasen