Undo-Transaction
Visszaállítja az aktív tranzakciót.
Syntax
Undo-Transaction
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
A Undo-Transaction
parancsmag visszaállítja az aktív tranzakciót. Egy tranzakció visszaállításakor a rendszer elveti a tranzakció parancsai által végrehajtott módosításokat, és visszaállítja az adatokat az eredeti formájára.
Ha a tranzakció több előfizetőt is tartalmaz, egy Undo-Transaction
parancs az összes előfizető teljes tranzakciójának visszaállítását hajtja végre.
Alapértelmezés szerint a rendszer automatikusan visszaállítja a tranzakciókat, ha a tranzakció bármely parancsa hibát okoz. A tranzakciók azonban más visszaállítási beállítással indíthatók el, és ezzel a parancsmaggal bármikor visszaállíthatja az aktív tranzakciót.
A Undo-Transaction
parancsmag a Windows PowerShell tranzakciós funkcióját támogató parancsmagok egyike. További információ: about_Transactions.
Példák
1. példa: Az aktuális tranzakció visszaállítása
Undo-Transaction
Ez a parancs visszaállítja az aktuális, aktív tranzakciót.
2. példa: Tranzakció indítása és visszaállítása
Set-Location hkcu:\software
Start-Transaction
New-Item -Path "ContosoCompany" -UseTransaction
Undo-Transaction
Ez a példa elindít egy tranzakciót, majd visszaállítja azt. Ennek eredményeképpen a beállításjegyzékben nem történik módosítás.
3. példa: Tranzakció visszaállítása az összes előfizető számára
Set-Location hkcu:\software
Start-Transaction
New-Item -Path "ContosoCompany" -UseTransaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- -----
Error 1 Active
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- -----
Error 2 Active
Undo-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- -----
Error 0 RolledBack
Ez a példa azt mutatja be, hogy amikor bármely előfizető visszaállít egy tranzakciót, a teljes tranzakció vissza lesz állítva az összes előfizető számára.
Az első parancs a beállításkulcs helyét HKCU:\Software
módosítja.
A második parancs elindít egy tranzakciót.
A harmadik parancs a New-Item
parancsmaggal hoz létre egy új beállításkulcsot. A parancs a UseTransaction paramétert használja a tranzakció módosításának belefoglalásához.
A negyedik parancs a Get-Transaction
parancsmaggal kéri le az aktív tranzakciót. Figyelje meg, hogy az állapot aktív, és az előfizetők száma 1.
Az ötödik parancs ismét a Start-Transaction
parancsot használja. A tranzakció indítása általában akkor történik, amikor egy másik tranzakció folyamatban van, amikor a fő tranzakció által használt szkript magában foglalja a saját teljes tranzakcióját. Ez a példa interaktívan történik, így szakaszokban vizsgálhatja meg. Amikor egy parancsot Start-Transaction
futtat, miközben egy másik tranzakció folyamatban van, a parancsok új előfizetőként csatlakoznak a meglévő tranzakcióhoz, és az előfizetők száma növekszik.
A hatodik parancs a Get-Transaction
parancsmaggal kéri le az aktív tranzakciót. Figyelje meg, hogy az előfizetők száma most 2.
A hetedik parancs a tranzakció visszaállítását használja Undo-Transaction
. Ez a parancs nem ad vissza objektumokat.
Az utolsó parancs egy Get-Transaction
olyan parancs, amely lekéri az aktív, vagy ebben az esetben a legutóbbi aktív tranzakciót. Az eredmények azt mutatják, hogy a tranzakció vissza lett állítva, és hogy az előfizetők száma 0, ami azt mutatja, hogy a tranzakció vissza lett állítva az összes előfizető számára.
Paraméterek
-Confirm
Jóváhagyást kér a parancsmag futtatása előtt.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Bevitelek
None
Ehhez a parancsmaghoz nem csövezhet be bemenetet.
Kimenetek
None
Ez a parancsmag nem ad vissza kimenetet.
Jegyzetek
A véglegesített tranzakciók nem állíthatók vissza.
Az aktív tranzakción kívül semmilyen tranzakciót nem állíthat vissza. Egy másik, független tranzakció visszaállításához először véglegesítenie vagy vissza kell állítania az aktív tranzakciót.
A tranzakció visszagördülése véget vet a tranzakciónak. A tranzakció ismételt használatához új tranzakciót kell elindítania.
Kapcsolódó hivatkozások
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: