Relationeledatabase En S Q L

20
Relationele databases en SQL 1 Schematechnieken en databases Module VIII Hoofdstuk 3 Relationele databases en SQL

Transcript of Relationeledatabase En S Q L

Page 1: Relationeledatabase En  S Q L

Relationele databases en SQL 1

Schematechnieken en databases

Module VIIIHoofdstuk 3

Relationele databases en SQL

Page 2: Relationeledatabase En  S Q L

Relationele databases en SQL 2

Database

Een database is een verzameling van gegevens: een gegevensbank.

Voorbeelden:‣ Leerlingenadministratie op school.‣ Boekenadministratie in de bibliotheek.‣ Telefoonboek.‣ NS Reisplanner op internet.‣ Productoverzicht van een uitgeverij.

Gegevens kan je vastleggen in een kaartenbakof in een database.

Page 3: Relationeledatabase En  S Q L

Relationele databases en SQL 3

Voordelen & nadelen Nadelen van een papieren systeem

‣ De kaarten kunnen slechts op één manier gesorteerd zijn.• Hierdoor kunnen gegevens ook op slechts één manier gezocht en

geselecteerd worden.

‣ Onhandig in gebruik. • Hoe groter de bak(ken), hoe tijdrovender het zoeken!

‣ Veel werk om te beheren.

Page 4: Relationeledatabase En  S Q L

Relationele databases en SQL 4

Voordelen & Nadelen

Voordelen van een computer-database:‣ Snel informatie op te vragen.‣ Op meerdere manieren te sorteren.‣ Eenvoudig, logisch te ordenen.‣ Minder werk om te beheren.‣ Overzichtelijk.

Page 5: Relationeledatabase En  S Q L

Relationele databases en SQL 5

Van papier naar computer

Alle gegevens worden opgeslagen in tabellen. Gegevens van één kaartje komen in één rij van een

tabel. De velden op het kaartje worden de kolommen in de

tabel.

Page 6: Relationeledatabase En  S Q L

Relationele databases en SQL 6

Database Management System (1)

Afkorting: DBMS Een DBMS is een verzameling programma's voor het

maken, onderhouden en gebruiken van een database. Een DBMS gebruikt opslagmedia die door computers te

benaderen zijn.‣ Magnetische en optische schijven‣ Diskettes‣ Tapes

Page 7: Relationeledatabase En  S Q L

Relationele databases en SQL 7

Database Management System (2)

Database makenDatabase maken Database beherenDatabase beheren

Tabellen maken Gegevens wijzigen

Gegevens invoeren Informatie opvragen

Page 8: Relationeledatabase En  S Q L

Relationele databases en SQL 8

Checklist database ontwerp

Gegevens opslaan:‣ Welke gegevens?‣ Hoeveel?‣ Hoe blijven de gegevens betrouwbaar?‣ Wat weet de gebruiker?

Gegevens ophalen:‣ Welke relaties tussen gegevens?

Gegevens bewerken:‣ Wie is verantwoordelijk voor bewerking?‣ Welke beveiligingsmaatregelen zijn nodig?‣ Wie mag wijzigingen aanbrengen in de databasestructuur?

Page 9: Relationeledatabase En  S Q L

Relationele databases en SQL 9

Database Management System (3)

Functies‣ Een nieuwe database definiëren.‣ Gegevens opslaan en bewaren.‣ Gegevens veranderen.‣ Gegevens opvraagbaar maken.‣ Een database beveiligen.‣ Integriteit bewaken (voorkomen

van fouten)

Voorbeelden programma's:‣ MS-Access‣ Solid‣ Oracle‣ SQL-server‣ DB2

Page 10: Relationeledatabase En  S Q L

Relationele databases en SQL 10

Relationele Database (1)

In een relationele database worden de gegevens en hun onderlinge relaties gerepresenteerd in tabellen.

Een tabel bestaat uit velden.‣ Velden zijn gerangschikt in records en kolommen.‣ Een sleutelveld van een record heeft een unieke waarde

waarmee je een record kunt terugvinden in een tabel. ‣ Een sleutelveld heeft een unieke identificatie:

de primaire sleutel.

Page 11: Relationeledatabase En  S Q L

Relationele databases en SQL 15

Informatievraag (query)

Om gegevens gestructureerd te kunnen opslaan, bewerken en opvragen is het mogelijk om zelf (tijdelijke) tabellen samen te stellen uit (delen van) bestaande tabellen.

Hiervoor gebruik je een Query.‣ Dit is een zoekopdracht om gegevens op te vragen uit een database.

Zo'n vraag wordt geformuleerd in een speciale vraagtaal.‣ Voorbeeld: alle leerlingen van wie de achternaam met een 'A' begint

opvragen uit een tabel met leerlingen van 'A tot Z'.

Page 12: Relationeledatabase En  S Q L

Relationele databases en SQL 16

Sleutels

Primaire sleutel:‣ Een kolom die je kunt gebruiken als unieke

identificatie voor de rijen in die tabel.‣ Het kan ook een combinatie van kolommen zijn. ‣ Voorbeelden: productnummer, studentnummer.

Page 13: Relationeledatabase En  S Q L

Relationele databases en SQL 17

SQL

Een bekende vraagtaal is SQL: Structured Query Language ('gestructureerde vraagtaal').

Met deze programmeertaal kun je door middel van korte vragen (queries) specifieke gegevens uit een database halen.

Het is een taal voor het invoeren en verwijderen, beveiligen en raadplegen van gegevens in een relationele database. ‣ Je kunt gegevensverzamelingen in één of meerdere tabellen

bewerken.

Page 14: Relationeledatabase En  S Q L

Relationele databases en SQL 18

Programma's die SQL gebruiken

MS-Access‣ Grafisch‣ Stand alone

Solid‣ Via LAN of WAN‣ Client-server architectuur‣ Remote database

Filemaker Oracle SQL-server Sybase

Page 15: Relationeledatabase En  S Q L

Relationele databases en SQL 20

DBMS

programmaprogramma

SQLSQL resultaatresultaat

MS Access & SQL

Page 16: Relationeledatabase En  S Q L

Relationele databases en SQL 21

SQL - taal

SQL kent alleen Engelse woorden. Bijvoorbeeld:‣ SELECT ‣ FROM‣ WHERE‣ GROUP BY‣ ORDER BY‣ SELECT

Page 17: Relationeledatabase En  S Q L

Relationele databases en SQL 22

SQL- operatoren

Relatie-operatoren‣ = is gelijk aan;‣ <> is ongelijk aan‣ > is groter dan; ‣ >= is groter dan of gelijk

aan ‣ < is kleiner dan‣ <= is kleiner dan of gelijk

aan

Logische operatoren‣ AND‣ OR‣ NOT‣ NEAR

Om gegevens te kunnen selecteren die voldoen aan bepaalde voorwaarden, gebruikt SQL operatoren.

Page 18: Relationeledatabase En  S Q L

Relationele databases en SQL 23

SQL - functies

COUNT COUNT (*) SUM ( AVG MAX MIN

Om het nog wat ingewikkelder te maken: SQL kent ook functies:

Page 19: Relationeledatabase En  S Q L

Relationele databases en SQL 24

Aan de slag!

In een presentatie leer je geen SQL. Wel wanneer je zelf aan de slag gaat. In je boek staan talloze voorbeelden. Bekijk deze goed en oefen met deze taal.

Veel succes!

Page 20: Relationeledatabase En  S Q L

Relationele databases en SQL 25