OPO: Statistiek en databeheer ZA0184 (Databeheer: college ZA5382, Statische
dataverwerking: labosessie ZA5428 (3 SP) (enkel deel Databanken en SQL))
Docent: Daan Luyckx
Gebaseerd op: Video’s modules, PPT’s, Oefeningenbundels
© Viktor Raeymaekers –
Module 1: Kennismaking met databases
en RDBMS
• Database: een geordende verzameling tabellen (die onderling gekoppeld
kunnen zijn) met gegevens in, die goed door meerdere gebruikers tegelijk
bekeken kunnen worden
• Spreadsheetsoftware zoals Excel is geen database, dit is enkel handig voor
kleine hoeveelheden data
De 3 databasemodellen
• Het hiërarchisch model
o Boomstructuur
o Elke node heeft juist 1 (of 0) ouder(s),
en elke ouder kan meerdere kinderen
hebben
o Het nadeel hierbij is dat je soms
meerdere bomen moet maken
• Het netwerkmodel
o Geen ouders en kinderen meer, maar records
met links ertussen
o Een record kan dus meerdere links hebben
o Gebruikt in BVB Active Directory
• Het relationeel model
o Alle data staan in tabellen
o De tabellen worden gekoppeld door
dezelfde sleutelwaarde te gebruiken
o Gebruikt in MySQL (en vele andere)
à dit gebruiken wij
, Samenvatting Databeheer
Extra uitleg over het relationeel model
• Elke entiteit (iets waar je dat over wilt bijhouden, BVB klant, bestelling, …)
krijgt een eigen tabel met kolommen (veld) die vooraf bepaald worden
• Elke kolom is een stuk data dat je wilt bijhouden over de entiteit
• Elk record (BVB klant, bestelling, …) krijgt een rij in de tabel
• Primary key (PK): één of meerdere sleutel(s) (veld(en)) die verplicht in elke
tabel zit(ten) om elk record uniek te identificeren. PK kan enkelvoudig (1
kolom) of samengesteld zijn (meerdere kolommen)
• Foreign key (FK): optioneel om naar een PK van een andere tabel te
verwijzen (dus om tabellen te koppelen)
Verschillende focussen van verschillende database managent
systemen (DMS)
• Relationele databases: tabellen met letters en cijfers, doen wij
• Objectgeoriënteerde databases: om objecten op te slaan, zie cursus
Objectgerichte software ontwikkeling
• Big data / NoSQL-systemen: niet-traditionele data, BVB afbeeldingen
• Multimedia-database: BVB films
• Geografische informatiesystemen (GIS): BVB een landkaart met gegevens
erop
Extra uitleg over de relationele databases
• Rationale database = Relational DataBase Management System = RDBMS
o De brug tussen de lezer (mens of programma) en de effectieve DB
o Deze houdt ook de databasedefinitie (metadata) bij (welke kolommen
zijn PK, wat is het datatype, …). Zonder databasedefinitie heb je
eigenlijk een soort spreadsheet met ruwe data
• BVB MySQL Server is een RDBMS, MySQL Workbench niet
• Om één of meerder DB(‘s) aan te maken in een RDBMS moet je ze eerst
definiëren en daarna construeren
Query’s
• Query: wanneer je data opvraagt of wijzigt in je DB
SQL
• Afgeleid van SEQUEL, geen afkorting of betekenis
• SQL is declaratief: jij zegt wat er moet gebeuren en SQL bepaalt achter de
schermen hoe dat het beste moet
• Drie soorten SQL-statements
o Schema statements: structuur van de DB, BVB CREATE TABLE
2