Presentation laddar. Vänta.

Presentation laddar. Vänta.

Frågeutveckling inom MSSQL

Liknande presentationer


En presentation över ämnet: "Frågeutveckling inom MSSQL"— Presentationens avskrift:

1 Frågeutveckling inom MSSQL
Presentation slide for courses, classes, lectures et al. Frågeutveckling inom MSSQL Marcus Medina

2 Dagens visdomsord ” När du förändrar ditt sätt att betrakta saker förändras de saker du betraktar” - Okänd

3 Dataintegritet Vad innebär det?
Informationen i databasen ska vara konsekvent med de regler som gäller Exempelvis får en anställd inte tillhöra en avdelning som inte finns Orimliga värden får inte förekomma Exempel Person i medlemsregistret som är 350 år gammal

4 Dataintegritet och villkor
Villkor för att begränsa riskerna för att datan blir fel callas Constraint Från engelskan : Constrain, hålla fast, hindra, stoppa Constraint ska alltså hindra oss från att lägga in felaktig data

5 Constraints NOT NULL CHECK UNIQUE Primary Key
Ett fält får inte vara null CHECK En logisk kontroll av datan (ålder>15 and ålder<75) UNIQUE Ser till att ingen rad data blir en dubblett Primary Key Ingen rad får ha samma ID

6 Constraints Foreign key Default
FK Nyckeln måste finnas innan raden får skapas Default Ser till att kolumnen får ett standardvärde om inget anges Se även:

7 Transactions Regler för Transactions ACID
Atomicity: Allt eller inget, misslyckas en transaction så sparas inget Consistency: Transaction följer alla regler (constraints, triggers mm) som finns för att kontrollera datan Isolation: Ser till att alla Transactions sker seriellt, den ena efter den andra. Durability: När transaction är avslutat ska informationen vara sparad och säkrad mot crasch

8 Transactions Test med att lägga in, ta bort och ändra data med rollbacks och commit Olika nivåer av Transactioner Bra när man inte är säker på om datan matchar reglerna Bra när man arbetar mot olika tabeller samtidigt och vill vara säker på att allt, eller inget, sparas

9 Vyer Än så länge har vi skapat vyer med vyeditor
Lätt att skapa med SQL create view vMovie as SELECT Characters.name, Movies.name AS Movie FROM Characters LEFT JOIN Movies ON Characters.fk_movieID = Movies.movieID GO

10 Funktioner Funktioner har mer eller mindre samma funktion som funktioner i C# har de förser en med extralösningar som inte finns annars Beräkningar Sökningar Mm Create function {namn} ({param} {typ}) returns {typ} as BEGIN {din kod} END

11 Stored procedures Färdigkompilerade för snabb körning
Tar emot parametrar Kan köra funktioner Behöver inte returnera data Används till Dubbelchecka input Uppdatera data Massuppdateringar eller inserts

12 Triggers Triggers körs bara vid insert, delete eller update
Den körs bara, den får ingen information i övrigt Den vet inte något om senaste ID som skapats, ändrats eller raderats Fel i triggern gör att Insert/update/delete inte går igenom

13 Läxa Dagens: Beginning T-SQL sida 309-377 Till måndag: 378-401 (XML)
Kolla runt på w3Schools The Manga Guide to Databases Resten av boken 

14 Go Ninja!


Ladda ner ppt "Frågeutveckling inom MSSQL"

Liknande presentationer


Google-annonser