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.