MySQL MariaDB

MySQL-transaktioner

MySQL-transaktioner
En transaktion er en samtidig samling af funktioner til manipulation af datasæt og udføres som om det var en enkelt enhed af arbejdet. Med andre ord kan en transaktion aldrig gennemføres, før hver enkelt proces er vellykket inde i enheden. Hele processen kollapser, hvis en transaktion inde i processen går ned. Flere SQL-forespørgsler samles i en enhed, og alle udføres sammen som en del af transaktionen. Hver gang en transaktion indeholder flere opdateringer til en database, og transaktionen er begået, fungerer alle ændringer, eller alle opdateringerne vendes, når operationen rulles tilbage.

Transaktionsegenskaber

Transaktioner, ofte kendt under betegnelsen SYRE, har fire generelle generelle egenskaber.

MySQL-transaktioner, der fungerer:

Inden for MySQL bruges de to udtryk, Commit og Rollback primært kun til MySQL-transaktioner. Transaktionerne starter kun med BEGIN WORK-erklæring og slutter enten med en COMMIT-erklæring eller en ROLLBACK-erklæring. SQL-instruktionerne omfatter størstedelen af ​​transaktionen blandt både start- og stopudtalelser. Sådanne begivenhedsserier er uanset det anvendte specifikke programmeringssprog. Du laver en passende sti på det sprog, du bruger til at opbygge applikationen. Nedenstående SQL-sætninger kan implementeres ved hjælp af mysql-forespørgslen () -funktionen.

Eksempel 01: AutoCommit-tilstand Til:

MySQL fungerer med Autocommit-fasen tilladt som standard. Det sikrer, at MySQL gemmer ændringerne på disken for altid at oprette det, så længe vi kører en forespørgsel, der justerer (ændrer) en tabel. Det er ikke nødvendigt at vende tilbage. Lad os prøve med AUTOCOMMIT i tilstanden. Åbn din MySQL kommandolinjeskal, og skriv din adgangskode for at begynde.

Tag et eksempel på en tabel 'bog', der er oprettet i en database 'data'. Lige nu har vi ikke udført nogen forespørgsel på det endnu.

>> VÆLG * FRA data.Bestil;

Trin 2: Denne proces er at opdatere tabellen 'bog'. Lad os opdatere værdien af ​​kolonnen 'Forfatter', hvor 'Navn' på en bog er 'Hjem'. Du kan se, at ændringer er foretaget med succes.

>> OPDATER data.bog SET Forfatter = 'Cristian Steward' HVOR Navn = 'Hjem';

Ved at få et glimt af den opdaterede tabel har vi en ændret værdi af forfatteren, hvor 'navn' er 'Hjem'.

>> VÆLG * FRA data.Bestil;

Lad os bruge ROLLBACK-kommandoen til at gendanne ændringerne ved blot at tilføje nedenstående forespørgsel. Du kan se, at ROLLBACK-forespørgslen ikke fungerer her, da den viser, at '0 rækker berørt'.

>> TILBAGE

Du kan endda se tabellen også. Tabellen har ingen ændringer efter ROLLBACK-sætningens eksekvering hidtil. Dette betyder, at ROLLBACK ikke fungerer, når vi har AUTOCOMMIT som standard.

>> VÆLG * FRA data.Bestil;

Eksempel 02: AutoCommit-tilstand Fra:

For at vende tilbage til de foretagne ændringer, lad os prøve med AUTOCOMMIT off-tilstand. Ved hjælp af det samme eksempel på tabel 'bog' udfører vi nogle ændringer på den. Vi bruger START TRANSACTION-erklæringen til at deaktivere dens auto-commit-fase eller blot skrive nedenstående kommando for at slå AUTOCOMMIT fra.

>> SET AUTOCOMMIT = 0;

Lad os sige, at vi har den samme tabel 'bog' i vores database, og vi er nødt til at foretage ændringer i den. Vend derefter ændringerne tilbage til de gamle igen.

>> VÆLG * FRA data.Bestil;

Hvis du ikke har slået AUTOCOMMIT-tilstand fra, skal du starte med en START-TRANSAKTION-forespørgsel i kommandolinjeskallen som nedenfor.

>> START TRANSAKTION;

Vi opdaterer den samme tabel ved hjælp af UPDATE-kommandoen ved at indstille 'Forfatter' som 'Aliana', hvor 'Navn' på en bog er 'Drøm'. Gør det ved hjælp af nedenstående kommando. Du vil se, at ændringerne vil blive foretaget med succes og effektivt.

>> OPDATER data.bog SET Autho = 'Aliana' HVOR Navn = 'Drøm';

Lad os kontrollere, om ovenstående forespørgsel har fungeret perfekt og foretaget ændringer i tabellen eller ej. Du kan kontrollere den opdaterede tabel ved at bruge nedenstående SELECT-kommando som altid.

>> VÆLG * FRA data.Bestil;

Du kan se, at forespørgslen har fungeret godt som vist nedenfor.

Nu drejer det sig om ROLLBACK-kommandoen for at udføre sin funktion. Prøv ROLLBACK-kommandoen på din kommandolinje for at rulle den seneste opdatering til tabellen tilbage.

>> TILBAGE

Lad os kontrollere, om ROLLBACK-forespørgslen er blevet udført, som den skal fungere eller ej. Til dette skal du kontrollere tabellen 'bog' igen ved at bruge kommandoen 'SELECT' som altid.

>> VÆLG * FRA data.Bestil;

Du kan se fra nedenstående output, at ROLLBACK endelig har fungeret. Det har tilbageført ændringerne foretaget af UPDATE-forespørgslen på denne tabel.

Konklusion:

Det er alt for MySQL-transaktioner. Jeg håber, at denne guide hjælper dig med at udføre MySQL-transaktioner bekvemt.

Kæmp om Wesnoth-vejledning
Slaget om Wesnoth er et af de mest populære open source-strategispil, som du kan spille på dette tidspunkt. Ikke kun har dette spil været under udvikl...
0 A.D. Vejledning
Ud af de mange strategispil derude, 0 A.D. formår at skille sig ud som en omfattende titel og et meget dybt, taktisk spil på trods af at det er open s...
Unity3D Tutorial
Introduktion til Unity 3D Unity 3D er en kraftfuld spiludviklingsmotor. Det er cross platform, det er det giver dig mulighed for at oprette spil til m...