Megosztás a következőn keresztül:


Undo-Transaction

Visszaállítja az aktív tranzakciót.

Syntax

Default (Alapértelmezett)

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, a Visszavonási tranzakció parancs az összes előfizető teljes tranzakciójának visszaállítását vonja vissza.

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

PS C:\> 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

PS C:\> cd hkcu:\software
PS HKCU:\Software> Start-Transaction
PS HKCU:\Software> New-Item -Path "ContosoCompany" -UseTransaction
PS HKCU:\Software> 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

PS C:\> cd hkcu:\software
PS HKCU:\Software> Start-Transaction
PS HKCU:\Software> New-Item -Path "ContosoCompany" -UseTransaction
PS HKCU:\Software> Get-Transaction

RollbackPreference   SubscriberCount   Status
------------------   ---------------   -----
Error                1                 Active

PS HKCU:\Software> Start-Transaction
PS HKCU:\Software> Get-Transaction

RollbackPreference   SubscriberCount   Status
------------------   ---------------   -----
Error                2                 Active

PS HKCU:\Software> Undo-Transaction
PS HKCU:\Software> 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 HKCU:\Szoftverregisztrációs kulcsra módosítja a helyet.

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 parancsmagot használja az aktív tranzakció lekéréséhez. 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 Start-Transaction parancsot 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 parancsmagot használja az aktív tranzakció lekéréséhez. Figyelje meg, hogy az előfizetők száma most 2.

A hetedik parancs Visszavonási tranzakció használatával visszaállítja a tranzakciót. Ez a parancs nem ad vissza objektumokat.

Az utolsó parancs egy Get-Transaction 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

Megerősítést kér a parancsmag futtatása előtt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Cf

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-WhatIf

Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Wi

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

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.