sql >> Database >  >> RDS >> Sqlserver

Wijzig gegevensvastlegging alleen voor updates en verwijderingen

Ik zou gewoon een trigger gebruiken om updates en verwijderingen vast te leggen.

Ik denk niet dat je CDC kunt vertellen op welke DML je moet letten, en ik denk dat het nogal verspillend is om CDC al deze invoegingen te laten opnemen om ze daarna te verwijderen. Dat is op zichzelf al duur en de fragmentatie die het veroorzaakt, zal ook problemen veroorzaken voor alle zoekopdrachten die u uitvoert op de capture-tabellen (u zult veel meestal lege pagina's hebben) en de werkstatistieken zullen het moeten doen om constant houd de statistieken up-to-date.

Je zou mogelijk een trigger in plaats van insert op de capture-tabel kunnen zetten, dat doet gewoon niets, maar ik heb dit niet geprobeerd om zelfs maar te zien of het is toegestaan, en ik weet zeker niet welke impact dat zal hebben op de CDC-functies. Misschien wat onderzoek waard, maar mijn oorspronkelijke antwoord staat nog steeds, zelfs als deze hack werkt:gebruik gewoon een trigger.



  1. MySQL-database start niet in XAMPP Manager-osx

  2. Hoe het maximum van twee waarden in MySQL te krijgen?

  3. PostgreSQL-naamgevingsconventies

  4. Hoe de QUOTENAME()-functie werkt in SQL Server (T-SQL)