Databaser

; Tore Mallaug ; TISIP (Utgiver)

Databaser dekker grunnleggende databasefag på høgskole- og universitetsnivå og gir en grundig innføring i databaseteori og design av databaser. Boken legger stor vekt på praktisk bruk av metoder og teknikker. Les mer
Vår pris
539,-

(Paperback) Fri frakt!
Leveringstid: Sendes innen 1 virkedag

Paperback
Legg i
Paperback
Legg i
Vår pris: 539,-

(Paperback) Fri frakt!
Leveringstid: Sendes innen 1 virkedag

Om boka

Databaser dekker grunnleggende databasefag på høgskole- og universitetsnivå og gir en grundig innføring i databaseteori og design av databaser. Boken legger stor vekt på praktisk bruk av metoder og teknikker. Det rettes fokus på relasjonsdatabaser med SQL, datamodellering, normalisering og databaseadministrasjon. Ulike databasearkitekturer nevnes, for eksempel klient/tjener-løsninger, og bruk av databaser mot Internett. Det er læringsmål, sammendrag og kontrollspørsmål til hvert kapittel.I 2. utgaven er det tatt hensyn til en rekke brukerønsker. Temaet datamodellering er utvidet med flere eksempler. SQL er splittet opp i to kapitler. Innføringen i databaser og Internett blir nå konsentrert rundt PHP og XML. I tillegg er transaksjonshåndtering i flerbrukerdatabaser gjort mer praktisk med eksempler i SQL.Bokens egen side: www.databasebok.no

Fakta

Innholdsfortegnelse




Forord

Innledning
Databaser som basis i grunnopplæringen
Å bruke boken i undervisningen

Programvare

Konvensjoner


Bokens struktur
Emner som inngår i boken



Kapittel 1 Introduksjon til databaser og databasesystem
1.1 Hvor brukes databasesystem?

1.2 Filbaserte system
1.2.1 Problemene med filbaserte system


1.3 Databaser

1.4 Databasesystem
1.4.1 Innholdet i et databasesystem

1.4.2 Fordeler

1.4.2.1 Databasens tekstbaserte brukergrensesnitt

1.4.2.2 Structured Query Language (SQL)

1.4.2.3 Stor datakraft

1.4.2.4 Fleksibelt

1.4.2.5 Bedre sikkerhet

1.4.2.6 Flerbrukerkontroll

1.4.2.7 Sikkerhetskopi (eng.Backup)

1.4.2.8 Individuell tilpasning

1.4.2.9 Datauavhengighet

1.4.2.10 Prøve å unngå dataduplisering

1.4.3 Hvilke personer er involvert i bruken av et databasesystem?

1.4.4 Ulemper og fordeler


1.5 Databasearkitektur
1.5.1 Det eksterne nivå

1.5.2 Det konseptuelle (logiske) nivå

1.5.3 Det interne nivå


1.6 Datamodeller
1.6.1 Postbaserte datamodeller

1.6.1.1 Relasjonsmodellen

1.6.2 Objektbaserte datamodeller

1.6.2.1 ER-modellen


1.7 Flerbruker databasearkitektur
1.7.0.1 Distribuert bearbeiding



Kapittel 2 Relasjonsmodellen
2.1 Innledning

2.2 Modellen

2.3 Datastruktur
2.3.1 Relasjonsbegrepet

2.3.2 Attributt

2.3.3 Domene

2.3.4 Tuppel

2.3.5 Relasjonsdatabase


2.4 Relasjonelle nøkler
2.4.1 Supernøkkel

2.4.2 Kandidatnøkkel

2.4.3 Alternativ nøkkel

2.4.4 Primærnøkkel

2.4.5 Sammensatt nøkkel

2.4.6 Surrogatnøkkel

2.4.7 Fremmednøkkel


2.5 Dataintegritet
2.5.1 Entitetsintegritet

2.5.2 Referanseintegritet

2.5.2.1 Verdien null

2.5.3 Eksempel på å lage databasen: bruktbiler

2.5.3.1 Hvordan foreslå relasjoner med tilhørende nøkler?


2.6 Datamanipulering
2.6.1 Relasjonsalgebra

2.6.1.1 Seleksjon

2.6.1.2 Projeksjon

2.6.1.3 Produkt

2.6.2 Forening

2.6.2.1 Ytterforening

2.6.3 Settoperasjoner

2.6.3.1 Union

2.6.3.2 Snitt

2.6.3.3 Differanse

2.6.4 Grupperingsoperatorer

2.6.4.1 Divisjon

2.6.5 Avsluttende kommentarer


2.7 Hva er så en relasjonsdatabase?
2.7.1 Har jeg en relasjonsdatabase?



Kapittel 3 Normalisering
3.1 Hva er normalisering og hvorfor normalisere?
3.1.1 Betraktninger


3.2 Funksjonelle determineringer (avhengigheter)

3.3 Unormalisert form

3.4 Første, andre og tredje normalform
3.4.1 Første normalform

3.4.2 Andre normalform

3.4.2.1 Et eksempel på tabell med flere kandidatnøkler

3.4.3 Tredje normalform


3.5 Boyce-Codd normalform

3.6 Et normaliseringseksempel: hotellbestilling

3.7 Når er det vi ikke normaliserer?

3.8 Dekomponering av tabeller


Kapittel 4 SQL - opprette en tabell og enkle spørringer
4.1 Innledning
4.1.1 SQL-grammatikk

4.1.2 Prosessering av SQL-spørringer

4.1.3 Presentasjon av databasen vår


4.2 Datadefinisjonsspråk
4.2.1 Oppretting av tabeller med entitetsintegritet

4.2.1.1 Datatyper

4.2.1.2 Tilføying av referanseintegritet

4.2.1.3 Tilføying av dataintegritet

4.2.2 Oppretting av indekser

4.2.3 Modifisering av databaseskjema


4.3 Datamanipuleringsspråk
4.3.1 Manipulering av radene i en tabell

4.3.1.1 Innlegging av nye data

4.3.1.2 Oppdatering av data

4.3.1.3 Sletting av data

4.3.1.4 Commit-Rollback

4.3.2 Utvalgsspørringer

4.3.2.1 Enkle spørringer: hva skal med i SELECT-listen

4.3.2.2 Enkle spørringer: avledete kolonner

4.3.2.3 Enkle spørringer: utvalg

4.3.3 Sortering

4.3.4 Beregningsfunksjoner

4.3.5 Gruppering

4.3.6 Delspørringer

4.3.6.1 Ulike typer delspørringer


4.4 NULL-verdier
4.4.1 Boolske uttrykk og NULL-verdier

4.4.2 Test på NULL-verdier

4.4.3 Aggregering og NULL-verdier

4.4.4 GROUP BY og NULL-verdier

4.4.5 NULL-verdier ved bruk av DISTINCT og beregninger

4.4.6 Delspørringer og NULL-verdier



Kapittel 5 SQL - flertabelisporringer og utsnitt
5.1 Flertabellspørringer (foreningsspørring)
5.1.1 Det kartesiske produkt

5.1.2 Naturlig forening

5.1.3 Selvresultat

5.1.4 Ytterforening

5.1.5 Forening på ikke-nøkkelkolonner

5.1.6 EXISTS


5.2 Delspørring eller forening?

5.3 Sett-operasjoner

5.4 Virtuelle tabeller
5.4.1 Endre dataverdier

5.4.2 Hvordan bruke utsnitt med WITH CHECK OPTION?



Kapittel 6 Datamodellering
6.1 Innledning
6.1.1 Betraktninger


6.2 Entitetstyper og entiteter
6.2.1 Sterke og svake entitetstyper


6.3 Attributt
6.3.1 Sammensatte attributter

6.3.2 Flerverdiattributter

6.3.3 Avledet attributt

6.3.4 Nøkkelattributt


6.4 Sammenhengstyper
6.4.1 Multivegs sammenhengstyper

6.4.2 Flervegs sammenhengstyper

6.4.3 Hierarkier

6.4.4 Multiplisitet

6.4.4.1 En-til-en

6.4.4.2 En-til-mange

6.4.4.3 Mange-til-mange


6.5 Konstruksjon av ER-modeller

6.6 Objektorientering i ER-modeller
6.6.1 Generalisering og spesialisering

6.6.2 Representasjon av super- og subentitetstyper

6.6.2.1 Restriksjoner

6.6.2.2 Nøkler i en generalisering og spesialisering

6.6.3 Aggregering og komposisjon


6.7 Eksempel på en fullstendig ER-modell


Kapittel 7 Objektorientering i relasjonsdatabaser
7.1 Objektorientering i relasjonsdatabaser
7.1.1 Objektorienterte begrep

7.1.2 Lagring av objekter i vanlige tabeller uten støtte for o-o

7.1.2.1 Innkapsling i relasjonsdatabasesystem

7.1.2.2 Abstraksjon i relasjonelle databasesystem


7.2 Objektrelasjonell databaseteknologi
7.2.1 Utvidete relasjonsdatabasesystemer


7.3 SQL 3
7.3.1 Objekttyper

7.3.2 Dynamisk matrise

7.3.3 Objekttabeller

7.3.3.1 DML-operasjoner

7.3.3.2 Sletting

7.3.4 Nøstete tabeller

7.3.4.1 DML-operasjoner

7.3.4.2 Pekere (REF)

7.3.4.3 Datamanipulering med pekere

7.3.4.4 Avhengigheter

7.3.5 Metoder

7.3.5.1 Metodekall

7.3.6 Abstrakte datatyper

7.3.6.1 Objekttyper

7.3.6.2 Oppretting av metodekroppen

7.3.6.3 Oppretting av objekttabeller

7.3.6.4 Innlegging av data

7.3.6.5 Spørringer og resultattabeller



Kapittel 8 Flerbrukerdatabaser og sikkerhet
8.1 Flerbrukerdatabasesystemer

8.2 Transaksjoner
8.2.1 Introduksjon

8.2.2 Egenskaper ved transaksjoner

8.2.3 Transaksjoner i SQL

8.2.4 Problemer ved samtidighet

8.2.4.1 Tapt oppdatering

8.2.4.2 Ikke-overgitte data

8.2.4.3 Inkonsistente innhentinger

8.2.5 Samtidighetskontroll

8.2.5.1 Låseteknikker

8.2.5.2 Tofaselåsing

8.2.5.3 Tidsmerkemetoder

8.2.6 Vranglås

8.2.7 Isolasjonsnivåer i SQL

8.2.8 Gjenopprettbarhet


8.3 Databaseadministrasjon
8.3.1 Innledning

8.3.2 Filer og lagringsstrukturer

8.3.3 Indeksering

8.3.4 Optimalisering (eng.tuning) av en database


8.4 Datasikkerhet
8.4.1 Introduksjon

8.4.2 Datasikkerhetsplan

8.4.3 Adgangskontroll

8.4.3.1 Skjønnsmessig adgangskontroll

8.4.3.2 Påbudt adgangskontroll


8.5 Administrasjon av sikkerhet i Oracle
8.5.1 Brukere

8.5.2 Objektrettigheter

8.5.3 Systemrettigheter

8.5.4 Oppretting og endring av brukere

8.5.5 Tildeling og fjerning av rettigheter

8.5.5.1 GRANT

8.5.5.2 REVOKE

8.5.5.3 Bruk av VIEW til å begrense adgang

8.5.6 Roller

8.5.7 Informasjon om rettigheter bruker har



Kapittel 9 Databasearkitektur
9.1 Databasearkitektur

9.2 Sentralisert løsning

9.3 Klient/tjener-løsninger
9.3.1 Introduksjon

9.3.2 Tolags- og trelagsløsning

9.3.3 En databasetjener, flere klienter

9.3.4 Flere databasetjenere, flere klienter

9.3.5 Transaksjonsprosessering

9.3.6 Mellomvare


9.4 Distribuerte databasesystemer
9.4.1 Rene distribuerte databasesystemer

9.4.2 Andre distribuerte løsninger

9.4.3 Mobile databaser


9.5 Noen spesielle databaser
9.5.1 Temporale databaser

9.5.2 Romlige databaser

9.5.3 Datavarehus



Kapittel 10 Databaser og Internett
10.1 Introduksjon

10.2 Kobling mellom database og verdensveven

10.3 Klient/tjener-løsning

10.4 Applikasjonsnivå
10.4.1 Webgrensesnitt (HTML)

10.4.2 Dataoverføring med HTTP

10.4.3 Webtjener


10.5 Koblingsløsninger (mellomvare)
10.5.1 ASP.NET

10.5.2 JSP

10.5.3 PHP


10.6 Databasemotor

10.7 Eksempler på bruk av PHP mot MySQL
10.7.1 Oppretting en database i MySQL

10.7.2 Laging av webgrensesnitt i HTML

10.7.3 Låsing av tabellen

10.7.4 Laging av PHP-skriptene


10.8 Semistrukturelle databaser og XML
10.8.1 Semistrukturelle data

10.8.2 XML

10.8.3 Forskjellen mellom HTML og XML

10.8.4 XML-teknologi

10.8.5 XML Schema

10.8.6 Et eksempel på et XML Schema

10.8.7 Bruk av nøkler i XML-dokument

10.8.8 XQuery

10.8.9 Lagring av XML i databaser



Referanser

Forslag til videre lesning

Stikkord