Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev. 48 33142 Värnamo Tel: 0370-18100 Epost: Databasteknik 2 T-SQL Transactions.

Slides:



Advertisements
Liknande presentationer
Leverantör.
Advertisements

- Stycken, objektiv, svåra ord
Butiksdata.
Tomas Sandström, Adtollo
Tillämpning av felinjicering på Blueberry3D Andreas Ögren
Föreläsning 9 Programmeringsteknik och Matlab 2D1312/2D1305
Databaser & databasdesign
Ncg | sweden om | navigator xlreport Oskar Kristiansen
Hur går det till att rapportera in betyg idag?
Föreläsning 7, Kapitel 7 Designa klasser Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling.
Databasadministration
Kräkseminarium Bo Ahrenfeldt
system för handläggarstöd
Injustering värmesystem
Access med Sebastian och Robert
Informationshantering
Hämta företagsdata till Excel
Inmatning till databaser
Ladok Lärosäte Lokala system Behörighets- katalog Idp Personal Studenter CSN SCB NyA Etc. Lärosäte Lokala system Behörighets- katalog Idp Personal Studenter.
Persondatorer Datorns internminne (Kapitel 6)
Föreläsning 7 Analys av algoritmer T(n) och ordo
Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Databasteknik 2.
Inkapsling.
Polymorfism.
NETinfo 2009–10-09 Magnus Persson Epost: Telefon: 046 –
Distribuerade system & Realtids system Erik Löthman Henrik Jacobsson Johan Byggnings Kristoffer Hellstrand Rohith Menon.
Distribuerade filsystem
Mahmud Al Hakim Webmaster DAG 11 VT09 Mahmud Al Hakim
WEBMASTER DAG 13 Mahmud Al Hakim
DAV B04 - Databasteknik Återhämtning (kap 19).
Tabeller.
1 Registrering och uppladdning shp-filer för geotekniska undersökningsområden - startläge.
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 8 ( ) Innehåll: Trådprogrammering i Java - Avbrott (”interrupts”) - Metoden join() -
UTVECKLING MED RAMVERKET.NET Marcus Medina. Dagens visdomsord ” Ingen vet vad han klarar innan han har försökt. ” - Publilius Syrus (85 f.Kr.-43 f.Kr.).
DATABASHANTERING för programmerare Lektion 3 Mahmud Al Hakim
UTVECKLING MED RAMVERKET.NET Marcus Medina. Dagens visdomsord ”Den enda verkliga utbildningen får man av det som går en emot.” André Gide ( )
DATABASHANTERING för programmerare Lektion 4 Mahmud Al Hakim
MED RAMVERKET.NET Marcus Medina UTVECKLING. Dagens visdomsord ” För varje berg du bestiger se inte bara vad som ligger framför dig, titta ner och se vad.
Utveckling med ramverket .net
Transaktionshantering (kap 17+18)
Databashantering MS Access 2003 Lektion 2
Flexicon – Din systempartner
UTVECKLING MED RAMVERKET.NET Marcus Medina. Dagens visdomsord “Det verkar alltid omöjligt tills dess att det är gjort” Nelson Mandela.
Mahmud Al Hakim 2  Mål för kursen  Kursplanering  Kurslitteratur  Betygsättning  Grunder om databaser  Tabeller.
Kontextuell ärendehantering
Tabellrelationer Innan ni får göra lite övningar tänkte jag att jag skulle gå igenom lite om tabellrelationer.
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 8 ( )‏ Innehåll:  Introduktion till Java EE (Enterprise Edition)  Enterprise Java Beans.
© Fujitsu Services, 2003 ARC ALEPH Reporting Center
Demografi; lokal makroekonomisk struktur och tillväxt
Återblick. Vad är en databas? ”En samling information som är organiserad på ett sådant sätt att det är lätt att söka efter och hämta enskilda bitar information”
Access 1 ITDA 2 Kurs Namn Klass Betyg En elev (namn) kommer att läsa många kurser och få ett betyg i varje kurs. Försök modellera om till funktionella.
Central eposttjänst 1 Central eposttjänst vid Lunds universitet.
Delarna i en Access-databas
Navision och SQL Server 2005
Nyttiga funktioner Villkorsstyrd formatering Klistra in special Få med alla relaterade poster när data hämtas från mer än en tabell.
DA7351 Programmering 1 Databas SQL Föreläsning 24.
1177.se och Hitta och jämför vård Sammanställning av förändringar
Hur går det till att rapportera in betyg idag? Varje lärare fyller i ett Excel- dokument där varje delmoment i kursen fylls i. När betyget är satt skickas.
Engångsbatchar/kompletterings- batchar för registervård Hans Persson
Databaser, avancerade frågor
Från databas till Excel
IT Databas Göran Wiréen
Om databaser.
Från databas till Excel
Repetition Del 1.
IT Databas Göran Wiréen
SQL Structured Query Language Frågespråk för att används för Kommandon
SQL Structured Query Language Frågespråk för att används för Kommandon
Presentationens avskrift:

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Databasteknik 2 T-SQL Transactions Triggers DataHandling DataExport

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 En transaktion är i grund och botten en teknik för att kunna Hantera flera SQL kommandon som en grupp istället för enskilda kommandon. En transaktion exekveras i grupp och resulterar i att alla Kommandon genomförs eller att alla kommandon ångras. Transaction Insert… Update… Delete…. Commit Rollback

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 I de fall där flera SQL kommandon måste köras för att utföra ett önskat resultat används transaktioner för att säkerställa att ingen halvfärdig data skrivs till databasen. Kund Order Transaktion start INSERT INTO Kund …….. INSERT INTO Order …….. INSERT INTO Artiklar_i_order …… Transaktion Commit eller Rollback Artiklar_i_order Tabeller

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 En transaktion påbörjas med ”BEGIN TRANSACTION” och avslutas med ”COMMIT TRANSACTION” eller ”ROLLBACK TRANSACTION” Efter varje SQL kommando kan vi kontrollera om ett fel uppstod och iså fall anropa ROLLBACK för att avbryta Transaktionen och ångra alla förändringar som transaktionen skulle medfört. Passeras samtliga SQL kommandon utan Errors anropas COMMIT TRANSACTION för att verkställa ändringarna.

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 Vad händer under en transaktion Alla modifieringar som sker under en transaktion lagras i transaktionsloggen. Den av transaktionen nya/uppdaterade datan lagras i ett buffertminne till dess att en commit eller rollback inträffar. Transaction log Databas Buffertminne sqlkommando Data som modifieras läses upp om det krävs

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 Vad händer under en transaktion När en Commit inträffar skrivs inte datan till disk direkt utan I transaktionsloggen sätts bara en markör att datan är ”godkännd”. Utförs en rollback återställs förändringarna på berörda pages i buffertminnet. Begin Transaction ….. Commit Transaction Begin…... Rollback… Begin….... Commit Transaktionslog SQL Server skriver med jämna intervall för att begränsa mängden data i minnet men även för Att inte göra IO anrop till disk varje gång en en förändring sker. Dessa nerskrivningar markeras i transaktionsloggen Checkpoints. På så sätt vet SQL server vilka transakioner som är skrivna till disk.

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 Samtidighet Ett stort problem med databaser och transaktioner är samtidighet. D.v.s. vad händer om flera transaktioner försöker bearbeta samma data samtidigt. guidsumma….. 712’931 Update…….

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 Samtidighet En transaktion är beroende av att ingen annan ändrar data under tiden en annan transaktion ändrar datan. Då värden inte blir beständiga förrän en Commit eller rollback inträffat kan det definitivt uppstå problem när flera kockar rör om i grytan samtidigt. Lösningen på problemet är att en transaktion får låsa de poster den bearbetar. Det finns olika lås som transaktionen kan sätta på de poster som används.

Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Transactions Databasteknik2 Ex Begin Transaction BEGIN TRY INSERT INTO …….. INSERT INTO ……. COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH